diff options
| -rw-r--r-- | arch/powerpc/boot/dts/mpc8349emitx.dts | 16 | ||||
| -rw-r--r-- | arch/powerpc/kernel/dma.c | 1 | ||||
| -rw-r--r-- | drivers/watchdog/iTCO_wdt.c | 2 | ||||
| -rw-r--r-- | fs/lockd/host.c | 3 | ||||
| -rw-r--r-- | fs/lockd/svc.c | 1 | ||||
| -rw-r--r-- | fs/nfsd/nfs4recover.c | 2 | ||||
| -rw-r--r-- | fs/nfsd/nfs4state.c | 1 | ||||
| -rw-r--r-- | net/sunrpc/svcsock.c | 9 |
8 files changed, 22 insertions, 13 deletions
diff --git a/arch/powerpc/boot/dts/mpc8349emitx.dts b/arch/powerpc/boot/dts/mpc8349emitx.dts index 2c9d54a35bc3..4bdbaf4993a1 100644 --- a/arch/powerpc/boot/dts/mpc8349emitx.dts +++ b/arch/powerpc/boot/dts/mpc8349emitx.dts | |||
| @@ -91,6 +91,14 @@ | |||
| 91 | interrupts = <18 0x8>; | 91 | interrupts = <18 0x8>; |
| 92 | interrupt-parent = <&ipic>; | 92 | interrupt-parent = <&ipic>; |
| 93 | }; | 93 | }; |
| 94 | |||
| 95 | mcu_pio: mcu@a { | ||
| 96 | #gpio-cells = <2>; | ||
| 97 | compatible = "fsl,mc9s08qg8-mpc8349emitx", | ||
| 98 | "fsl,mcu-mpc8349emitx"; | ||
| 99 | reg = <0x0a>; | ||
| 100 | gpio-controller; | ||
| 101 | }; | ||
| 94 | }; | 102 | }; |
| 95 | 103 | ||
| 96 | spi@7000 { | 104 | spi@7000 { |
| @@ -139,14 +147,6 @@ | |||
| 139 | interrupt-parent = <&ipic>; | 147 | interrupt-parent = <&ipic>; |
| 140 | interrupts = <71 8>; | 148 | interrupts = <71 8>; |
| 141 | }; | 149 | }; |
| 142 | |||
| 143 | mcu_pio: mcu@a { | ||
| 144 | #gpio-cells = <2>; | ||
| 145 | compatible = "fsl,mc9s08qg8-mpc8349emitx", | ||
| 146 | "fsl,mcu-mpc8349emitx"; | ||
| 147 | reg = <0x0a>; | ||
| 148 | gpio-controller; | ||
| 149 | }; | ||
| 150 | }; | 150 | }; |
| 151 | 151 | ||
| 152 | usb@22000 { | 152 | usb@22000 { |
diff --git a/arch/powerpc/kernel/dma.c b/arch/powerpc/kernel/dma.c index 1562daf8839a..3a6eaa876ee1 100644 --- a/arch/powerpc/kernel/dma.c +++ b/arch/powerpc/kernel/dma.c | |||
| @@ -75,6 +75,7 @@ static int dma_direct_map_sg(struct device *dev, struct scatterlist *sgl, | |||
| 75 | for_each_sg(sgl, sg, nents, i) { | 75 | for_each_sg(sgl, sg, nents, i) { |
| 76 | sg->dma_address = sg_phys(sg) + get_dma_direct_offset(dev); | 76 | sg->dma_address = sg_phys(sg) + get_dma_direct_offset(dev); |
| 77 | sg->dma_length = sg->length; | 77 | sg->dma_length = sg->length; |
| 78 | __dma_sync_page(sg_page(sg), sg->offset, sg->length, direction); | ||
| 78 | } | 79 | } |
| 79 | 80 | ||
| 80 | return nents; | 81 | return nents; |
diff --git a/drivers/watchdog/iTCO_wdt.c b/drivers/watchdog/iTCO_wdt.c index 26173a270e94..5b395a4ddfdf 100644 --- a/drivers/watchdog/iTCO_wdt.c +++ b/drivers/watchdog/iTCO_wdt.c | |||
| @@ -392,7 +392,7 @@ static int iTCO_wdt_stop(void) | |||
| 392 | 392 | ||
| 393 | /* Bit 13: TCO_EN -> 1 = Enables the TCO logic to generate SMI# */ | 393 | /* Bit 13: TCO_EN -> 1 = Enables the TCO logic to generate SMI# */ |
| 394 | val32 = inl(SMI_EN); | 394 | val32 = inl(SMI_EN); |
| 395 | val32 &= 0x00002000; | 395 | val32 |= 0x00002000; |
| 396 | outl(val32, SMI_EN); | 396 | outl(val32, SMI_EN); |
| 397 | 397 | ||
| 398 | /* Set the NO_REBOOT bit to prevent later reboots, just for sure */ | 398 | /* Set the NO_REBOOT bit to prevent later reboots, just for sure */ |
diff --git a/fs/lockd/host.c b/fs/lockd/host.c index 9fd8889097b7..70fc63a1727b 100644 --- a/fs/lockd/host.c +++ b/fs/lockd/host.c | |||
| @@ -167,7 +167,8 @@ static struct nlm_host *nlm_lookup_host(struct nlm_lookup_host_info *ni) | |||
| 167 | continue; | 167 | continue; |
| 168 | if (host->h_server != ni->server) | 168 | if (host->h_server != ni->server) |
| 169 | continue; | 169 | continue; |
| 170 | if (!nlm_cmp_addr(nlm_srcaddr(host), ni->src_sap)) | 170 | if (ni->server && |
| 171 | !nlm_cmp_addr(nlm_srcaddr(host), ni->src_sap)) | ||
| 171 | continue; | 172 | continue; |
| 172 | 173 | ||
| 173 | /* Move to head of hash chain. */ | 174 | /* Move to head of hash chain. */ |
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c index c631a83931ce..56b076736b56 100644 --- a/fs/lockd/svc.c +++ b/fs/lockd/svc.c | |||
| @@ -181,6 +181,7 @@ lockd(void *vrqstp) | |||
| 181 | } | 181 | } |
| 182 | flush_signals(current); | 182 | flush_signals(current); |
| 183 | cancel_delayed_work_sync(&grace_period_end); | 183 | cancel_delayed_work_sync(&grace_period_end); |
| 184 | locks_end_grace(&lockd_manager); | ||
| 184 | if (nlmsvc_ops) | 185 | if (nlmsvc_ops) |
| 185 | nlmsvc_invalidate_all(); | 186 | nlmsvc_invalidate_all(); |
| 186 | nlm_shutdown_hosts(); | 187 | nlm_shutdown_hosts(); |
diff --git a/fs/nfsd/nfs4recover.c b/fs/nfsd/nfs4recover.c index bb93946ace22..b79ec930d9f1 100644 --- a/fs/nfsd/nfs4recover.c +++ b/fs/nfsd/nfs4recover.c | |||
| @@ -225,12 +225,12 @@ nfsd4_list_rec_dir(struct dentry *dir, recdir_func *f) | |||
| 225 | return 0; | 225 | return 0; |
| 226 | 226 | ||
| 227 | nfs4_save_user(&uid, &gid); | 227 | nfs4_save_user(&uid, &gid); |
| 228 | INIT_LIST_HEAD(dentries); | ||
| 228 | 229 | ||
| 229 | filp = dentry_open(dget(dir), mntget(rec_dir.mnt), O_RDONLY); | 230 | filp = dentry_open(dget(dir), mntget(rec_dir.mnt), O_RDONLY); |
| 230 | status = PTR_ERR(filp); | 231 | status = PTR_ERR(filp); |
| 231 | if (IS_ERR(filp)) | 232 | if (IS_ERR(filp)) |
| 232 | goto out; | 233 | goto out; |
| 233 | INIT_LIST_HEAD(dentries); | ||
| 234 | status = vfs_readdir(filp, nfsd4_build_dentrylist, &dla); | 234 | status = vfs_readdir(filp, nfsd4_build_dentrylist, &dla); |
| 235 | fput(filp); | 235 | fput(filp); |
| 236 | while (!list_empty(dentries)) { | 236 | while (!list_empty(dentries)) { |
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index b0bebc552a11..1a052ac2bde9 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c | |||
| @@ -3261,6 +3261,7 @@ nfs4_state_shutdown(void) | |||
| 3261 | { | 3261 | { |
| 3262 | cancel_rearming_delayed_workqueue(laundry_wq, &laundromat_work); | 3262 | cancel_rearming_delayed_workqueue(laundry_wq, &laundromat_work); |
| 3263 | destroy_workqueue(laundry_wq); | 3263 | destroy_workqueue(laundry_wq); |
| 3264 | locks_end_grace(&nfsd4_manager); | ||
| 3264 | nfs4_lock_state(); | 3265 | nfs4_lock_state(); |
| 3265 | nfs4_release_reclaim(); | 3266 | nfs4_release_reclaim(); |
| 3266 | __nfs4_state_shutdown(); | 3267 | __nfs4_state_shutdown(); |
diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c index 95293f549e9c..a1951dcc5776 100644 --- a/net/sunrpc/svcsock.c +++ b/net/sunrpc/svcsock.c | |||
| @@ -1183,7 +1183,11 @@ int svc_addsock(struct svc_serv *serv, | |||
| 1183 | else if (so->state > SS_UNCONNECTED) | 1183 | else if (so->state > SS_UNCONNECTED) |
| 1184 | err = -EISCONN; | 1184 | err = -EISCONN; |
| 1185 | else { | 1185 | else { |
| 1186 | svsk = svc_setup_socket(serv, so, &err, SVC_SOCK_DEFAULTS); | 1186 | if (!try_module_get(THIS_MODULE)) |
| 1187 | err = -ENOENT; | ||
| 1188 | else | ||
| 1189 | svsk = svc_setup_socket(serv, so, &err, | ||
| 1190 | SVC_SOCK_DEFAULTS); | ||
| 1187 | if (svsk) { | 1191 | if (svsk) { |
| 1188 | struct sockaddr_storage addr; | 1192 | struct sockaddr_storage addr; |
| 1189 | struct sockaddr *sin = (struct sockaddr *)&addr; | 1193 | struct sockaddr *sin = (struct sockaddr *)&addr; |
| @@ -1196,7 +1200,8 @@ int svc_addsock(struct svc_serv *serv, | |||
| 1196 | spin_unlock_bh(&serv->sv_lock); | 1200 | spin_unlock_bh(&serv->sv_lock); |
| 1197 | svc_xprt_received(&svsk->sk_xprt); | 1201 | svc_xprt_received(&svsk->sk_xprt); |
| 1198 | err = 0; | 1202 | err = 0; |
| 1199 | } | 1203 | } else |
| 1204 | module_put(THIS_MODULE); | ||
| 1200 | } | 1205 | } |
| 1201 | if (err) { | 1206 | if (err) { |
| 1202 | sockfd_put(so); | 1207 | sockfd_put(so); |
