Skip to content

Commit e1e22b2

Browse files
committed
Merge tag 'driver-core-4.6-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
Pull misc fixes from Greg KH: "Here are three small fixes for 4.6-rc4. Two fix up some lz4 issues with big endian systems, and the remaining one resolves a minor debugfs issue that was reported. All have been in linux-next with no reported issues" * tag 'driver-core-4.6-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: lib: lz4: cleanup unaligned access efficiency detection lib: lz4: fixed zram with lz4 on big endian machines debugfs: Make automount point inodes permanently empty
2 parents b62dabf + dea5c24 commit e1e22b2

File tree

2 files changed

+14
-13
lines changed

2 files changed

+14
-13
lines changed

fs/debugfs/inode.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -457,7 +457,7 @@ struct dentry *debugfs_create_automount(const char *name,
457457
if (unlikely(!inode))
458458
return failed_creating(dentry);
459459

460-
inode->i_mode = S_IFDIR | S_IRWXU | S_IRUGO | S_IXUGO;
460+
make_empty_dir_inode(inode);
461461
inode->i_flags |= S_AUTOMOUNT;
462462
inode->i_private = data;
463463
dentry->d_fsdata = (void *)f;

lib/lz4/lz4defs.h

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,7 @@
1111
/*
1212
* Detects 64 bits mode
1313
*/
14-
#if (defined(__x86_64__) || defined(__x86_64) || defined(__amd64__) \
15-
|| defined(__ppc64__) || defined(__LP64__))
14+
#if defined(CONFIG_64BIT)
1615
#define LZ4_ARCH64 1
1716
#else
1817
#define LZ4_ARCH64 0
@@ -25,16 +24,18 @@
2524
typedef struct _U16_S { u16 v; } U16_S;
2625
typedef struct _U32_S { u32 v; } U32_S;
2726
typedef struct _U64_S { u64 v; } U64_S;
28-
#if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) \
29-
|| defined(CONFIG_ARM) && __LINUX_ARM_ARCH__ >= 6 \
30-
&& defined(ARM_EFFICIENT_UNALIGNED_ACCESS)
27+
#if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS)
3128

3229
#define A16(x) (((U16_S *)(x))->v)
3330
#define A32(x) (((U32_S *)(x))->v)
3431
#define A64(x) (((U64_S *)(x))->v)
3532

3633
#define PUT4(s, d) (A32(d) = A32(s))
3734
#define PUT8(s, d) (A64(d) = A64(s))
35+
36+
#define LZ4_READ_LITTLEENDIAN_16(d, s, p) \
37+
(d = s - A16(p))
38+
3839
#define LZ4_WRITE_LITTLEENDIAN_16(p, v) \
3940
do { \
4041
A16(p) = v; \
@@ -51,10 +52,13 @@ typedef struct _U64_S { u64 v; } U64_S;
5152
#define PUT8(s, d) \
5253
put_unaligned(get_unaligned((const u64 *) s), (u64 *) d)
5354

54-
#define LZ4_WRITE_LITTLEENDIAN_16(p, v) \
55-
do { \
56-
put_unaligned(v, (u16 *)(p)); \
57-
p += 2; \
55+
#define LZ4_READ_LITTLEENDIAN_16(d, s, p) \
56+
(d = s - get_unaligned_le16(p))
57+
58+
#define LZ4_WRITE_LITTLEENDIAN_16(p, v) \
59+
do { \
60+
put_unaligned_le16(v, (u16 *)(p)); \
61+
p += 2; \
5862
} while (0)
5963
#endif
6064

@@ -140,9 +144,6 @@ typedef struct _U64_S { u64 v; } U64_S;
140144

141145
#endif
142146

143-
#define LZ4_READ_LITTLEENDIAN_16(d, s, p) \
144-
(d = s - get_unaligned_le16(p))
145-
146147
#define LZ4_WILDCOPY(s, d, e) \
147148
do { \
148149
LZ4_COPYPACKET(s, d); \

0 commit comments

Comments
 (0)