Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm:
[ARM] 4875/1: Add MODULE_ALIAS to ixp4xx-beeper module
[ARM] 4873/1: Fix ITE 8152 interrupt demux
[ARM] 4878/1: Add oabi shim for fstatat64

+28 -3
+3 -2
arch/arm/common/it8152.c
··· 120 120 time, when they all three were 0. */ 121 121 bits_pd = __raw_readl(IT8152_INTC_PDCNIRR); 122 122 bits_lp = __raw_readl(IT8152_INTC_LPCNIRR); 123 + bits_ld = __raw_readl(IT8152_INTC_LDCNIRR); 123 124 if (!(bits_ld | bits_lp | bits_pd)) 124 125 return; 125 126 } ··· 134 133 135 134 bits_lp &= ((1 << IT8152_LP_IRQ_COUNT) - 1); 136 135 while (bits_lp) { 137 - i = __ffs(bits_pd); 136 + i = __ffs(bits_lp); 138 137 it8152_irq(IT8152_LP_IRQ(i)); 139 138 bits_lp &= ~(1 << i); 140 139 } 141 140 142 141 bits_ld &= ((1 << IT8152_LD_IRQ_COUNT) - 1); 143 142 while (bits_ld) { 144 - i = __ffs(bits_pd); 143 + i = __ffs(bits_ld); 145 144 it8152_irq(IT8152_LD_IRQ(i)); 146 145 bits_ld &= ~(1 << i); 147 146 }
+1 -1
arch/arm/kernel/calls.S
··· 336 336 CALL(sys_mknodat) 337 337 /* 325 */ CALL(sys_fchownat) 338 338 CALL(sys_futimesat) 339 - CALL(sys_fstatat64) 339 + CALL(ABI(sys_fstatat64, sys_oabi_fstatat64)) 340 340 CALL(sys_unlinkat) 341 341 CALL(sys_renameat) 342 342 /* 330 */ CALL(sys_linkat)
+24
arch/arm/kernel/sys_oabi-compat.c
··· 25 25 * sys_stat64: 26 26 * sys_lstat64: 27 27 * sys_fstat64: 28 + * sys_fstatat64: 28 29 * 29 30 * struct stat64 has different sizes and some members are shifted 30 31 * Compatibility wrappers are needed for them and provided below. ··· 167 166 int error = vfs_fstat(fd, &stat); 168 167 if (!error) 169 168 error = cp_oldabi_stat64(&stat, statbuf); 169 + return error; 170 + } 171 + 172 + asmlinkage long sys_oabi_fstatat64(int dfd, 173 + char __user *filename, 174 + struct oldabi_stat64 __user *statbuf, 175 + int flag) 176 + { 177 + struct kstat stat; 178 + int error = -EINVAL; 179 + 180 + if ((flag & ~AT_SYMLINK_NOFOLLOW) != 0) 181 + goto out; 182 + 183 + if (flag & AT_SYMLINK_NOFOLLOW) 184 + error = vfs_lstat_fd(dfd, filename, &stat); 185 + else 186 + error = vfs_stat_fd(dfd, filename, &stat); 187 + 188 + if (!error) 189 + error = cp_oldabi_stat64(&stat, statbuf); 190 + 191 + out: 170 192 return error; 171 193 } 172 194