Module Name: src Committed By: bouyer Date: Tue Nov 29 19:17:03 UTC 2011
Modified Files: src/sys/dev: fss.c fssvar.h Log Message: Fix FSSIOCSET50: needs to use the 5.0 struct fss_set, not the current one. To generate a diff of this commit: cvs rdiff -u -r1.78 -r1.79 src/sys/dev/fss.c cvs rdiff -u -r1.25 -r1.26 src/sys/dev/fssvar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/fss.c diff -u src/sys/dev/fss.c:1.78 src/sys/dev/fss.c:1.79 --- src/sys/dev/fss.c:1.78 Sun Aug 7 14:03:16 2011 +++ src/sys/dev/fss.c Tue Nov 29 19:17:03 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: fss.c,v 1.78 2011/08/07 14:03:16 rmind Exp $ */ +/* $NetBSD: fss.c,v 1.79 2011/11/29 19:17:03 bouyer Exp $ */ /*- * Copyright (c) 2003 The NetBSD Foundation, Inc. @@ -36,7 +36,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: fss.c,v 1.78 2011/08/07 14:03:16 rmind Exp $"); +__KERNEL_RCSID(0, "$NetBSD: fss.c,v 1.79 2011/11/29 19:17:03 bouyer Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -300,11 +300,17 @@ fss_ioctl(dev_t dev, u_long cmd, void *d { int error; struct fss_softc *sc = device_lookup_private(&fss_cd, minor(dev)); + struct fss_set _fss; struct fss_set *fss = (struct fss_set *)data; + struct fss_set50 *fss50 = (struct fss_set50 *)data; struct fss_get *fsg = (struct fss_get *)data; switch (cmd) { case FSSIOCSET50: + fss = &_fss; + fss->fss_mount = fss50->fss_mount; + fss->fss_bstore = fss50->fss_bstore; + fss->fss_csize = fss50->fss_csize; fss->fss_flags = 0; /* Fall through */ case FSSIOCSET: Index: src/sys/dev/fssvar.h diff -u src/sys/dev/fssvar.h:1.25 src/sys/dev/fssvar.h:1.26 --- src/sys/dev/fssvar.h:1.25 Thu Feb 24 09:38:57 2011 +++ src/sys/dev/fssvar.h Tue Nov 29 19:17:03 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: fssvar.h,v 1.25 2011/02/24 09:38:57 hannken Exp $ */ +/* $NetBSD: fssvar.h,v 1.26 2011/11/29 19:17:03 bouyer Exp $ */ /*- * Copyright (c) 2003, 2007 The NetBSD Foundation, Inc. @@ -37,6 +37,12 @@ #define FSS_UNCONFIG_ON_CLOSE 0x01 /* Unconfigure on last close */ #define FSS_UNLINK_ON_CREATE 0x02 /* Unlink backing store on create */ +struct fss_set50 { + char *fss_mount; /* Mount point of file system */ + char *fss_bstore; /* Path of backing store */ + blksize_t fss_csize; /* Preferred cluster size */ +}; + struct fss_set { char *fss_mount; /* Mount point of file system */ char *fss_bstore; /* Path of backing store */ @@ -57,7 +63,7 @@ struct fss_get { #define FSSIOCCLR _IO('F', 2) /* Unconfigure */ #define FSSIOFSET _IOW('F', 3, int) /* Set flags */ #define FSSIOFGET _IOR('F', 4, int) /* Get flags */ -#define FSSIOCSET50 _IOW('F', 0, struct fss_set) /* Old configure */ +#define FSSIOCSET50 _IOW('F', 0, struct fss_set50) /* Old configure */ #ifdef _KERNEL