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); |