Deleted Added
full compact
kern_conf.c (41153) kern_conf.c (43301)
1/*-
2 * Parts Copyright (c) 1995 Terrence R. Lambert
3 * Copyright (c) 1995 Julian R. Elischer
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:

--- 16 unchanged lines hidden (view full) ---

25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
1/*-
2 * Parts Copyright (c) 1995 Terrence R. Lambert
3 * Copyright (c) 1995 Julian R. Elischer
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:

--- 16 unchanged lines hidden (view full) ---

25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * $Id: kern_conf.c,v 1.28 1998/10/25 17:44:50 phk Exp $
33 * $Id: kern_conf.c,v 1.29 1998/11/14 21:58:51 wollman Exp $
34 */
35
36#include <sys/param.h>
37#include <sys/systm.h>
38#include <sys/module.h>
39#include <sys/conf.h>
40#include <sys/vnode.h>
41

--- 12 unchanged lines hidden (view full) ---

54 *
55 * A minimal stub routine can always return NODEV.
56 */
57dev_t
58chrtoblk(dev_t dev)
59{
60 struct cdevsw *cd;
61
34 */
35
36#include <sys/param.h>
37#include <sys/systm.h>
38#include <sys/module.h>
39#include <sys/conf.h>
40#include <sys/vnode.h>
41

--- 12 unchanged lines hidden (view full) ---

54 *
55 * A minimal stub routine can always return NODEV.
56 */
57dev_t
58chrtoblk(dev_t dev)
59{
60 struct cdevsw *cd;
61
62 if(cd = cdevsw[major(dev)]) {
62 if((cd = cdevsw[major(dev)]) != NULL) {
63 if (cd->d_bmaj != -1)
64 return(makedev(cd->d_bmaj,minor(dev)));
65 }
66 return(NODEV);
67}
68
69/*
70 * (re)place an entry in the bdevsw or cdevsw table

--- 97 unchanged lines hidden (view full) ---

168int
169cdevsw_module_handler(module_t mod, int what, void *arg)
170{
171 struct cdevsw_module_data* data = (struct cdevsw_module_data*) arg;
172 int error;
173
174 switch (what) {
175 case MOD_LOAD:
63 if (cd->d_bmaj != -1)
64 return(makedev(cd->d_bmaj,minor(dev)));
65 }
66 return(NODEV);
67}
68
69/*
70 * (re)place an entry in the bdevsw or cdevsw table

--- 97 unchanged lines hidden (view full) ---

168int
169cdevsw_module_handler(module_t mod, int what, void *arg)
170{
171 struct cdevsw_module_data* data = (struct cdevsw_module_data*) arg;
172 int error;
173
174 switch (what) {
175 case MOD_LOAD:
176 if (error = cdevsw_add(&data->dev, data->cdevsw, NULL))
176 if ((error = cdevsw_add(&data->dev, data->cdevsw, NULL)) != 0)
177 return error;
178 break;
179
180 case MOD_UNLOAD:
177 return error;
178 break;
179
180 case MOD_UNLOAD:
181 if (error = cdevsw_add(&data->dev, NULL, NULL))
181 if ((error = cdevsw_add(&data->dev, NULL, NULL)) != 0)
182 return error;
183 break;
184 }
185
186 if (data->chainevh)
187 return data->chainevh(mod, what, data->chainarg);
188 else
189 return 0;
190}
191
192int
193bdevsw_module_handler(module_t mod, int what, void* arg)
194{
195 struct bdevsw_module_data* data = (struct bdevsw_module_data*) arg;
196 int error;
197
198 switch (what) {
199 case MOD_LOAD:
182 return error;
183 break;
184 }
185
186 if (data->chainevh)
187 return data->chainevh(mod, what, data->chainarg);
188 else
189 return 0;
190}
191
192int
193bdevsw_module_handler(module_t mod, int what, void* arg)
194{
195 struct bdevsw_module_data* data = (struct bdevsw_module_data*) arg;
196 int error;
197
198 switch (what) {
199 case MOD_LOAD:
200 if (error = cdevsw_add(&data->cdev, data->cdevsw, NULL))
200 if ((error = cdevsw_add(&data->cdev, data->cdevsw, NULL)) != 0)
201 return error;
201 return error;
202 if (error = bdevsw_add(&data->bdev, data->cdevsw, NULL)) {
202 if ((error = bdevsw_add(&data->bdev, data->cdevsw, NULL)) != 0) {
203 cdevsw_add(&data->bdev, NULL, NULL);
204 return error;
205 }
206 break;
207
208 case MOD_UNLOAD:
203 cdevsw_add(&data->bdev, NULL, NULL);
204 return error;
205 }
206 break;
207
208 case MOD_UNLOAD:
209 if (error = bdevsw_add(&data->bdev, NULL, NULL))
209 if ((error = bdevsw_add(&data->bdev, NULL, NULL)) != 0)
210 return error;
210 return error;
211 if (error = cdevsw_add(&data->cdev, NULL, NULL))
211 if ((error = cdevsw_add(&data->cdev, NULL, NULL)) != 0)
212 return error;
213 break;
214 }
215
216 if (data->chainevh)
217 return data->chainevh(mod, what, data->chainarg);
218 else
219 return 0;
220}
212 return error;
213 break;
214 }
215
216 if (data->chainevh)
217 return data->chainevh(mod, what, data->chainarg);
218 else
219 return 0;
220}