PERFORCE change 162897 for review
Andrew Thompson
thompsa at FreeBSD.org
Wed May 27 18:44:09 UTC 2009
http://perforce.freebsd.org/chv.cgi?CH=162897
Change 162897 by thompsa at thompsa_burger on 2009/05/27 18:43:13
IFC @162896
Affected files ...
.. //depot/projects/usb/src/sys/Makefile#11 integrate
.. //depot/projects/usb/src/sys/arm/at91/ohci_atmelarm.c#19 delete
.. //depot/projects/usb/src/sys/arm/conf/AVILA#16 integrate
.. //depot/projects/usb/src/sys/arm/xscale/ixp425/files.ixp425#9 integrate
.. //depot/projects/usb/src/sys/arm/xscale/ixp425/if_npe.c#9 integrate
.. //depot/projects/usb/src/sys/cddl/boot/zfs/zfssubr.c#4 integrate
.. //depot/projects/usb/src/sys/cddl/compat/opensolaris/kern/opensolaris_acl.c#1 branch
.. //depot/projects/usb/src/sys/cddl/compat/opensolaris/kern/opensolaris_policy.c#5 integrate
.. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/common/acl/acl_common.c#4 integrate
.. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/common/acl/acl_common.h#3 integrate
.. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#6 integrate
.. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_acl.h#3 integrate
.. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_acl.c#4 integrate
.. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#10 integrate
.. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/sys/acl.h#2 integrate
.. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/sys/acl_impl.h#2 integrate
.. //depot/projects/usb/src/sys/cddl/dev/lockstat/lockstat.c#1 branch
.. //depot/projects/usb/src/sys/compat/freebsd32/freebsd32_misc.c#17 integrate
.. //depot/projects/usb/src/sys/compat/linux/linux_ioctl.c#11 integrate
.. //depot/projects/usb/src/sys/compat/linux/linux_mib.c#5 integrate
.. //depot/projects/usb/src/sys/compat/ndis/kern_ndis.c#13 integrate
.. //depot/projects/usb/src/sys/conf/NOTES#35 integrate
.. //depot/projects/usb/src/sys/conf/files#64 integrate
.. //depot/projects/usb/src/sys/conf/kern.pre.mk#16 integrate
.. //depot/projects/usb/src/sys/conf/options#27 integrate
.. //depot/projects/usb/src/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#13 integrate
.. //depot/projects/usb/src/sys/contrib/ipfilter/netinet/ip_nat.c#6 integrate
.. //depot/projects/usb/src/sys/crypto/via/padlock_hash.c#3 integrate
.. //depot/projects/usb/src/sys/dev/bktr/bktr_os.c#4 integrate
.. //depot/projects/usb/src/sys/dev/cxgb/cxgb_main.c#17 integrate
.. //depot/projects/usb/src/sys/dev/ksyms/ksyms.c#1 branch
.. //depot/projects/usb/src/sys/dev/mii/e1000phy.c#7 integrate
.. //depot/projects/usb/src/sys/dev/mii/e1000phyreg.h#4 integrate
.. //depot/projects/usb/src/sys/dev/mii/miidevs#13 integrate
.. //depot/projects/usb/src/sys/dev/msk/if_msk.c#11 integrate
.. //depot/projects/usb/src/sys/dev/msk/if_mskreg.h#8 integrate
.. //depot/projects/usb/src/sys/dev/nfe/if_nfe.c#9 integrate
.. //depot/projects/usb/src/sys/dev/random/nehemiah.c#2 integrate
.. //depot/projects/usb/src/sys/dev/random/randomdev_soft.c#6 integrate
.. //depot/projects/usb/src/sys/dev/sound/pci/cmi.c#7 integrate
.. //depot/projects/usb/src/sys/dev/sound/pci/cs4281.c#4 integrate
.. //depot/projects/usb/src/sys/dev/sound/pci/vibes.c#4 integrate
.. //depot/projects/usb/src/sys/dev/sound/pcm/sound.c#10 integrate
.. //depot/projects/usb/src/sys/dev/sound/pcm/sound.h#9 integrate
.. //depot/projects/usb/src/sys/dev/usb/bluetooth/TODO.TXT#2 delete
.. //depot/projects/usb/src/sys/dev/usb/bluetooth/ng_ubt.c#8 delete
.. //depot/projects/usb/src/sys/dev/usb/bluetooth/ng_ubt_var.h#2 delete
.. //depot/projects/usb/src/sys/dev/usb/bluetooth/ubtbcmfw.c#8 delete
.. //depot/projects/usb/src/sys/dev/usb/serial/usb_serial.c#6 integrate
.. //depot/projects/usb/src/sys/dev/usb/serial/usb_serial.h#4 integrate
.. //depot/projects/usb/src/sys/dev/usb/usb_busdma.c#8 integrate
.. //depot/projects/usb/src/sys/dev/usb/usb_busdma.h#6 integrate
.. //depot/projects/usb/src/sys/dev/usb/wlan/if_urtw.c#1 branch
.. //depot/projects/usb/src/sys/dev/usb/wlan/if_urtwreg.h#1 branch
.. //depot/projects/usb/src/sys/dev/usb/wlan/if_urtwvar.h#1 branch
.. //depot/projects/usb/src/sys/dev/xen/netfront/netfront.c#9 integrate
.. //depot/projects/usb/src/sys/fs/nfs/nfs.h#3 integrate
.. //depot/projects/usb/src/sys/fs/nfs/nfs_commonacl.c#2 integrate
.. //depot/projects/usb/src/sys/fs/nfs/nfs_commonkrpc.c#3 integrate
.. //depot/projects/usb/src/sys/fs/nfs/nfs_commonport.c#2 integrate
.. //depot/projects/usb/src/sys/fs/nfs/nfs_commonsubs.c#2 integrate
.. //depot/projects/usb/src/sys/fs/nfs/nfsport.h#3 integrate
.. //depot/projects/usb/src/sys/fs/nfsclient/nfs_clkrpc.c#3 integrate
.. //depot/projects/usb/src/sys/fs/nfsclient/nfs_clport.c#2 integrate
.. //depot/projects/usb/src/sys/fs/nfsclient/nfs_clvfsops.c#3 integrate
.. //depot/projects/usb/src/sys/fs/nfsclient/nfs_clvnops.c#3 integrate
.. //depot/projects/usb/src/sys/fs/nfsserver/nfs_nfsdkrpc.c#3 integrate
.. //depot/projects/usb/src/sys/fs/nfsserver/nfs_nfsdport.c#4 integrate
.. //depot/projects/usb/src/sys/fs/nfsserver/nfs_nfsdserv.c#3 integrate
.. //depot/projects/usb/src/sys/fs/nfsserver/nfs_nfsdsocket.c#3 integrate
.. //depot/projects/usb/src/sys/fs/nfsserver/nfs_nfsdstate.c#5 integrate
.. //depot/projects/usb/src/sys/fs/nwfs/nwfs_io.c#6 integrate
.. //depot/projects/usb/src/sys/fs/procfs/procfs_status.c#6 integrate
.. //depot/projects/usb/src/sys/fs/tmpfs/tmpfs_vnops.c#10 integrate
.. //depot/projects/usb/src/sys/geom/geom_subr.c#12 integrate
.. //depot/projects/usb/src/sys/ia64/ia64/mp_machdep.c#9 integrate
.. //depot/projects/usb/src/sys/kern/init_main.c#13 integrate
.. //depot/projects/usb/src/sys/kern/kern_cpuset.c#7 integrate
.. //depot/projects/usb/src/sys/kern/kern_descrip.c#21 integrate
.. //depot/projects/usb/src/sys/kern/kern_exit.c#16 integrate
.. //depot/projects/usb/src/sys/kern/kern_fail.c#1 branch
.. //depot/projects/usb/src/sys/kern/kern_fork.c#15 integrate
.. //depot/projects/usb/src/sys/kern/kern_jail.c#20 integrate
.. //depot/projects/usb/src/sys/kern/kern_linker.c#15 integrate
.. //depot/projects/usb/src/sys/kern/kern_lock.c#14 integrate
.. //depot/projects/usb/src/sys/kern/kern_lockf.c#9 integrate
.. //depot/projects/usb/src/sys/kern/kern_lockstat.c#1 branch
.. //depot/projects/usb/src/sys/kern/kern_mib.c#13 integrate
.. //depot/projects/usb/src/sys/kern/kern_mutex.c#14 integrate
.. //depot/projects/usb/src/sys/kern/kern_proc.c#18 integrate
.. //depot/projects/usb/src/sys/kern/kern_prot.c#11 integrate
.. //depot/projects/usb/src/sys/kern/kern_rmlock.c#4 integrate
.. //depot/projects/usb/src/sys/kern/kern_rwlock.c#14 integrate
.. //depot/projects/usb/src/sys/kern/kern_sx.c#14 integrate
.. //depot/projects/usb/src/sys/kern/kern_vimage.c#5 integrate
.. //depot/projects/usb/src/sys/kern/link_elf.c#12 integrate
.. //depot/projects/usb/src/sys/kern/link_elf_obj.c#12 integrate
.. //depot/projects/usb/src/sys/kern/linker_if.m#4 integrate
.. //depot/projects/usb/src/sys/kern/subr_acl_posix1e.c#5 integrate
.. //depot/projects/usb/src/sys/kern/sysv_msg.c#7 integrate
.. //depot/projects/usb/src/sys/kern/sysv_sem.c#10 integrate
.. //depot/projects/usb/src/sys/kern/sysv_shm.c#9 integrate
.. //depot/projects/usb/src/sys/kern/tty.c#22 integrate
.. //depot/projects/usb/src/sys/kern/uipc_debug.c#7 integrate
.. //depot/projects/usb/src/sys/kern/vfs_acl.c#5 integrate
.. //depot/projects/usb/src/sys/kern/vfs_bio.c#21 integrate
.. //depot/projects/usb/src/sys/kern/vfs_lookup.c#16 integrate
.. //depot/projects/usb/src/sys/kern/vfs_mount.c#23 integrate
.. //depot/projects/usb/src/sys/kern/vfs_subr.c#21 integrate
.. //depot/projects/usb/src/sys/kern/vfs_syscalls.c#21 integrate
.. //depot/projects/usb/src/sys/kgssapi/gsstest.c#3 integrate
.. //depot/projects/usb/src/sys/legacy/dev/ata/ata-usb.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/sound/usb/uaudio.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/sound/usb/uaudio.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/sound/usb/uaudio_pcm.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/sound/usb/uaudioreg.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/FILES#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/dsbr100io.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ehci.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ehci_ddb.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ehci_ixp4xx.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ehci_mbus.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ehci_pci.c#3 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ehcireg.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ehcivar.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/hid.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/hid.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/if_urtw.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/if_urtwreg.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/if_urtwvar.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ohci.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ohci_pci.c#3 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ohcireg.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ohcivar.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/rio500_usb.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/rt2573_ucode.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/sl811hs.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/sl811hsreg.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/sl811hsvar.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/slhci_pccard.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/u3g.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uark.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ubsa.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ubser.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ubser.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uchcom.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ucom.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ucomvar.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ucycom.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/udbp.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/udbp.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ufm.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ufoma.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uftdi.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uftdireg.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ugen.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ugraphire_rdesc.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uhci.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uhci_pci.c#3 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uhcireg.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uhcivar.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uhid.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uhub.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uipaq.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ukbd.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ulpt.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/umass.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/umct.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/umodem.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/ums.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uplcom.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/urio.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usb.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usb.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usb_if.m#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usb_mem.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usb_mem.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usb_port.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usb_quirks.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usb_quirks.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usb_subr.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usbcdc.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usbdi.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usbdi.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usbdi_util.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usbdi_util.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usbdivar.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/usbhid.h#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uscanner.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uslcom.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uvisor.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uvscom.c#2 delete
.. //depot/projects/usb/src/sys/legacy/dev/usb/uxb360gp_rdesc.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips/pmap.c#10 integrate
.. //depot/projects/usb/src/sys/modules/Makefile#32 integrate
.. //depot/projects/usb/src/sys/modules/dtrace/Makefile#3 integrate
.. //depot/projects/usb/src/sys/modules/dtrace/dtraceall/dtraceall.c#3 integrate
.. //depot/projects/usb/src/sys/modules/ksyms/Makefile#1 branch
.. //depot/projects/usb/src/sys/modules/linux/Makefile#9 integrate
.. //depot/projects/usb/src/sys/modules/netgraph/bluetooth/ubt/Makefile#5 integrate
.. //depot/projects/usb/src/sys/modules/netgraph/bluetooth/ubtbcmfw/Makefile#5 integrate
.. //depot/projects/usb/src/sys/modules/nfs4client/Makefile#2 delete
.. //depot/projects/usb/src/sys/modules/nfsclient/Makefile#5 integrate
.. //depot/projects/usb/src/sys/modules/usb/Makefile#18 integrate
.. //depot/projects/usb/src/sys/modules/usb/urtw/Makefile#1 branch
.. //depot/projects/usb/src/sys/modules/zfs/Makefile#8 integrate
.. //depot/projects/usb/src/sys/net/bpf.c#18 integrate
.. //depot/projects/usb/src/sys/net/if.c#25 integrate
.. //depot/projects/usb/src/sys/net/if_clone.c#5 integrate
.. //depot/projects/usb/src/sys/net/if_loop.c#19 integrate
.. //depot/projects/usb/src/sys/net/if_var.h#17 integrate
.. //depot/projects/usb/src/sys/net/rtsock.c#22 integrate
.. //depot/projects/usb/src/sys/net/vnet.h#8 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_adhoc.c#9 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_freebsd.c#16 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_hostap.c#12 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_monitor.c#3 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_radiotap.c#2 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_sta.c#10 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_wds.c#10 integrate
.. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/TODO#5 delete
.. //depot/projects/usb/src/sys/netinet/accf_dns.c#2 integrate
.. //depot/projects/usb/src/sys/netinet/in.c#25 integrate
.. //depot/projects/usb/src/sys/netinet/in_pcb.c#23 integrate
.. //depot/projects/usb/src/sys/netinet/ip_input.c#21 integrate
.. //depot/projects/usb/src/sys/netinet/ip_ipsec.c#13 integrate
.. //depot/projects/usb/src/sys/netinet/tcp_input.c#21 integrate
.. //depot/projects/usb/src/sys/netinet/tcp_reass.c#9 integrate
.. //depot/projects/usb/src/sys/netinet/tcp_subr.c#23 integrate
.. //depot/projects/usb/src/sys/netinet/udp_usrreq.c#21 integrate
.. //depot/projects/usb/src/sys/netinet/udp_var.h#7 integrate
.. //depot/projects/usb/src/sys/netinet/vinet.h#10 integrate
.. //depot/projects/usb/src/sys/netinet6/in6.c#23 integrate
.. //depot/projects/usb/src/sys/netinet6/in6_ifattach.c#18 integrate
.. //depot/projects/usb/src/sys/netinet6/in6_pcb.c#17 integrate
.. //depot/projects/usb/src/sys/netinet6/ip6_ipsec.c#9 integrate
.. //depot/projects/usb/src/sys/netinet6/udp6_usrreq.c#19 integrate
.. //depot/projects/usb/src/sys/netipsec/ipsec.c#18 integrate
.. //depot/projects/usb/src/sys/netipsec/ipsec.h#13 integrate
.. //depot/projects/usb/src/sys/netipsec/ipsec6.h#7 integrate
.. //depot/projects/usb/src/sys/netipsec/key.c#16 integrate
.. //depot/projects/usb/src/sys/netipsec/vipsec.h#6 integrate
.. //depot/projects/usb/src/sys/netipx/spx.h#3 integrate
.. //depot/projects/usb/src/sys/netipx/spx_reass.c#1 branch
.. //depot/projects/usb/src/sys/netipx/spx_usrreq.c#7 integrate
.. //depot/projects/usb/src/sys/netipx/spx_var.h#3 integrate
.. //depot/projects/usb/src/sys/nfs4client/nfs4.h#2 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_dev.c#4 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_dev.h#2 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_idmap.c#4 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_idmap.h#2 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_socket.c#5 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_subs.c#4 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_vfs.h#2 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_vfs_subs.c#3 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_vfsops.c#10 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_vn.h#2 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_vn_subs.c#4 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4_vnops.c#11 delete
.. //depot/projects/usb/src/sys/nfs4client/nfs4m_subs.h#2 delete
.. //depot/projects/usb/src/sys/nfsclient/bootp_subr.c#11 integrate
.. //depot/projects/usb/src/sys/nfsclient/krpc_subr.c#5 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs.h#10 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_bio.c#13 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_diskless.c#9 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_krpc.c#5 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_lock.c#6 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_nfsiod.c#4 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_node.c#8 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_socket.c#11 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_subs.c#10 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_vfsops.c#16 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_vnops.c#23 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfsm_subs.h#3 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfsmount.h#5 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfsnode.h#8 integrate
.. //depot/projects/usb/src/sys/nfsserver/nfs_srvkrpc.c#6 integrate
.. //depot/projects/usb/src/sys/nfsserver/nfs_srvsock.c#9 integrate
.. //depot/projects/usb/src/sys/nlm/nlm_advlock.c#5 integrate
.. //depot/projects/usb/src/sys/opencrypto/cryptodev.c#7 integrate
.. //depot/projects/usb/src/sys/powerpc/booke/pmap.c#12 integrate
.. //depot/projects/usb/src/sys/rpc/rpcclnt.c#9 delete
.. //depot/projects/usb/src/sys/rpc/rpcclnt.h#2 delete
.. //depot/projects/usb/src/sys/security/mac/mac_framework.c#8 integrate
.. //depot/projects/usb/src/sys/security/mac/mac_internal.h#11 integrate
.. //depot/projects/usb/src/sys/security/mac_bsdextended/mac_bsdextended.c#14 integrate
.. //depot/projects/usb/src/sys/sys/acl.h#4 integrate
.. //depot/projects/usb/src/sys/sys/cpuset.h#3 integrate
.. //depot/projects/usb/src/sys/sys/eventhandler.h#8 integrate
.. //depot/projects/usb/src/sys/sys/fail.h#1 branch
.. //depot/projects/usb/src/sys/sys/jail.h#14 integrate
.. //depot/projects/usb/src/sys/sys/ksyms.h#1 branch
.. //depot/projects/usb/src/sys/sys/lock.h#9 integrate
.. //depot/projects/usb/src/sys/sys/lockf.h#5 integrate
.. //depot/projects/usb/src/sys/sys/lockstat.h#1 branch
.. //depot/projects/usb/src/sys/sys/mutex.h#10 integrate
.. //depot/projects/usb/src/sys/sys/namei.h#4 integrate
.. //depot/projects/usb/src/sys/sys/param.h#31 integrate
.. //depot/projects/usb/src/sys/sys/priv.h#13 integrate
.. //depot/projects/usb/src/sys/sys/queue.h#5 integrate
.. //depot/projects/usb/src/sys/sys/rwlock.h#11 integrate
.. //depot/projects/usb/src/sys/sys/sx.h#9 integrate
.. //depot/projects/usb/src/sys/sys/syscallsubr.h#10 integrate
.. //depot/projects/usb/src/sys/sys/systm.h#17 integrate
.. //depot/projects/usb/src/sys/sys/vimage.h#11 integrate
.. //depot/projects/usb/src/sys/ufs/ufs/ufs_acl.c#4 integrate
.. //depot/projects/usb/src/sys/ufs/ufs/ufs_vnops.c#15 integrate
Differences ...
==== //depot/projects/usb/src/sys/Makefile#11 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/Makefile,v 1.54 2009/02/15 18:19:24 imp Exp $
+# $FreeBSD: src/sys/Makefile,v 1.55 2009/05/22 12:35:12 rwatson Exp $
.include <bsd.own.mk>
@@ -11,7 +11,7 @@
CSCOPEDIRS= boot bsm cam cddl compat conf contrib crypto ddb dev fs gdb \
geom gnu isa kern libkern modules net net80211 netatalk \
netgraph netinet netinet6 netipsec netipx netnatm netncp \
- netsmb nfs nfs4client nfsclient nfsserver nlm opencrypto \
+ netsmb nfs nfsclient nfsserver nlm opencrypto \
pci rpc security sys ufs vm xdr ${CSCOPE_ARCHDIR}
.if defined(ALL_ARCH)
CSCOPE_ARCHDIR ?= amd64 arm i386 ia64 mips pc98 powerpc sparc64 sun4v
==== //depot/projects/usb/src/sys/arm/conf/AVILA#16 (text+ko) ====
@@ -16,7 +16,7 @@
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
-# $FreeBSD: src/sys/arm/conf/AVILA,v 1.31 2009/05/10 00:00:25 kuriyama Exp $
+# $FreeBSD: src/sys/arm/conf/AVILA,v 1.32 2009/05/27 16:16:56 thompsa Exp $
ident AVILA
@@ -132,15 +132,14 @@
options AH_SUPPORT_AR5416
device ath_ar9160
-makeoptions WITH_LEGACY
-device ousb
+device usb
#options USB_DEBUG
-device oohci
-device oehci
-device oumass
+device ohci
+device ehci
+device umass
device scbus # SCSI bus (required for SCSI)
device da # Direct Access (disks)
-#device oural
-#device ozyd
+#device ural
+#device zyd
#device wlan_amrr
==== //depot/projects/usb/src/sys/arm/xscale/ixp425/files.ixp425#9 (text+ko) ====
@@ -1,4 +1,4 @@
-#$FreeBSD: src/sys/arm/xscale/ixp425/files.ixp425,v 1.10 2009/03/06 23:22:09 sam Exp $
+#$FreeBSD: src/sys/arm/xscale/ixp425/files.ixp425,v 1.11 2009/05/27 16:16:56 thompsa Exp $
arm/arm/bus_space_generic.c standard
arm/arm/cpufunc_asm_xscale.S standard
arm/arm/irq_dispatch.S standard
@@ -47,4 +47,3 @@
arm/xscale/ixp425/ixp425_qmgr.c optional qmgr
#
dev/usb/controller/ehci_ixp4xx.c optional ehci usb
-legacy/dev/usb/ehci_ixp4xx.c optional oehci ousb
==== //depot/projects/usb/src/sys/arm/xscale/ixp425/if_npe.c#9 (text+ko) ====
@@ -23,7 +23,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/if_npe.c,v 1.14 2009/03/10 19:35:37 sam Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/if_npe.c,v 1.15 2009/05/23 19:14:20 sam Exp $");
/*
* Intel XScale NPE Ethernet driver.
@@ -143,6 +143,7 @@
struct npestats *sc_stats;
bus_dmamap_t sc_stats_map;
bus_addr_t sc_stats_phys; /* phys addr of sc_stats */
+ struct npestats sc_totals; /* accumulated sc_stats */
};
/*
@@ -374,6 +375,8 @@
CTLFLAG_RW, &sc->sc_debug, 0, "control debugging printfs");
SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, "tickinterval",
CTLFLAG_RW, &sc->sc_tickinterval, 0, "periodic work frequency");
+ SYSCTL_ADD_STRUCT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, "stats",
+ CTLFLAG_RD, &sc->sc_totals, npestats, "onboard stats");
ether_ifattach(ifp, eaddr);
return 0;
@@ -867,12 +870,24 @@
static void
npe_addstats(struct npe_softc *sc)
{
-#define MIBADD(x) sc->mibdata.x += be32toh(ns->x)
+#define NPEADD(x) sc->sc_totals.x += be32toh(ns->x)
+#define MIBADD(x) do { sc->mibdata.x += be32toh(ns->x); NPEADD(x); } while (0)
struct ifnet *ifp = sc->sc_ifp;
struct npestats *ns = sc->sc_stats;
MIBADD(dot3StatsAlignmentErrors);
MIBADD(dot3StatsFCSErrors);
+ MIBADD(dot3StatsInternalMacReceiveErrors);
+ NPEADD(RxOverrunDiscards);
+ NPEADD(RxLearnedEntryDiscards);
+ NPEADD(RxLargeFramesDiscards);
+ NPEADD(RxSTPBlockedDiscards);
+ NPEADD(RxVLANTypeFilterDiscards);
+ NPEADD(RxVLANIdFilterDiscards);
+ NPEADD(RxInvalidSourceDiscards);
+ NPEADD(RxBlackListDiscards);
+ NPEADD(RxWhiteListDiscards);
+ NPEADD(RxUnderflowEntryDiscards);
MIBADD(dot3StatsSingleCollisionFrames);
MIBADD(dot3StatsMultipleCollisionFrames);
MIBADD(dot3StatsDeferredTransmissions);
@@ -880,10 +895,12 @@
MIBADD(dot3StatsExcessiveCollisions);
MIBADD(dot3StatsInternalMacTransmitErrors);
MIBADD(dot3StatsCarrierSenseErrors);
+ NPEADD(TxLargeFrameDiscards);
+ NPEADD(TxVLANIdFilterDiscards);
+
sc->mibdata.dot3StatsFrameTooLongs +=
be32toh(ns->RxLargeFramesDiscards)
+ be32toh(ns->TxLargeFrameDiscards);
- MIBADD(dot3StatsInternalMacReceiveErrors);
sc->mibdata.dot3StatsMissedFrames +=
be32toh(ns->RxOverrunDiscards)
+ be32toh(ns->RxUnderflowEntryDiscards);
@@ -902,6 +919,7 @@
be32toh(ns->dot3StatsSingleCollisionFrames)
+ be32toh(ns->dot3StatsMultipleCollisionFrames)
;
+#undef NPEADD
#undef MIBADD
}
==== //depot/projects/usb/src/sys/cddl/boot/zfs/zfssubr.c#4 (text+ko) ====
@@ -24,7 +24,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cddl/boot/zfs/zfssubr.c,v 1.3 2009/05/16 10:48:20 dfr Exp $");
+__FBSDID("$FreeBSD: src/sys/cddl/boot/zfs/zfssubr.c,v 1.5 2009/05/23 16:01:58 des Exp $");
static uint64_t zfs_crc64_table[256];
==== //depot/projects/usb/src/sys/cddl/compat/opensolaris/kern/opensolaris_policy.c#5 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cddl/compat/opensolaris/kern/opensolaris_policy.c,v 1.6 2008/11/23 20:14:19 pjd Exp $");
+__FBSDID("$FreeBSD: src/sys/cddl/compat/opensolaris/kern/opensolaris_policy.c,v 1.7 2009/05/24 19:21:49 trasz Exp $");
#include <sys/param.h>
#include <sys/priv.h>
@@ -302,6 +302,14 @@
if (error)
return (error);
}
+ /*
+ * Deny setting setuid if we are not the file owner.
+ */
+ if ((vap->va_mode & S_ISUID) && ovap->va_uid != cred->cr_uid) {
+ error = priv_check_cred(cred, PRIV_VFS_ADMIN, 0);
+ if (error)
+ return (error);
+ }
return (0);
}
==== //depot/projects/usb/src/sys/cddl/contrib/opensolaris/common/acl/acl_common.c#4 (text+ko) ====
@@ -424,7 +424,7 @@
#endif
}
-#ifndef __FreeBSD__
+#if !defined(_KERNEL)
acl_t *
acl_alloc(enum acl_type type)
{
@@ -470,7 +470,6 @@
cacl_free(aclp, sizeof (acl_t));
}
-#endif
static uint32_t
access_mask_set(int haswriteperm, int hasreadperm, int isowner, int isallow)
@@ -1727,3 +1726,4 @@
return (error);
#endif
}
+#endif /* _KERNEL */
==== //depot/projects/usb/src/sys/cddl/contrib/opensolaris/common/acl/acl_common.h#3 (text+ko) ====
@@ -46,6 +46,7 @@
extern int ace_trivial_common(void *, int,
uint64_t (*walk)(void *, uint64_t, int aclcnt, uint16_t *, uint16_t *,
uint32_t *mask));
+#if !defined(_KERNEL)
extern acl_t *acl_alloc(acl_type_t);
extern void acl_free(acl_t *aclp);
extern int acl_translate(acl_t *aclp, int target_flavor,
@@ -53,6 +54,7 @@
void ksort(caddr_t v, int n, int s, int (*f)());
int cmp2acls(void *a, void *b);
+#endif /* _KERNEL */
#ifdef __cplusplus
}
==== //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#6 (text+ko) ====
@@ -18,7 +18,7 @@
*
* CDDL HEADER END
*
- * $FreeBSD: src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c,v 1.9 2008/11/05 19:39:11 rodrigc Exp $
+ * $FreeBSD: src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c,v 1.10 2009/05/26 20:28:22 sson Exp $
*/
/*
@@ -122,6 +122,7 @@
#include <sys/sysctl.h>
#include <sys/lock.h>
#include <sys/mutex.h>
+#include <sys/rwlock.h>
#include <sys/sx.h>
#include <sys/dtrace_bsd.h>
#include <netinet/in.h>
@@ -3168,14 +3169,11 @@
uintptr_t rw;
} r;
#else
+ struct thread *lowner;
union {
- struct mtx *mi;
- uintptr_t mx;
- } m;
- union {
- struct sx *si;
- uintptr_t sx;
- } s;
+ struct lock_object *li;
+ uintptr_t lx;
+ } l;
#endif
switch (subr) {
@@ -3272,75 +3270,83 @@
break;
#else
- /*
- * XXX - The following code works because mutex, rwlocks, & sxlocks
- * all have similar data structures in FreeBSD. This may not be
- * good if someone changes one of the lock data structures.
- * Ideally, it would be nice if all these shared a common lock
- * object.
- */
case DIF_SUBR_MUTEX_OWNED:
- /* XXX - need to use dtrace_canload() and dtrace_loadptr() */
- m.mx = tupregs[0].dttk_value;
-
-#ifdef DOODAD
- if (LO_CLASSINDEX(&(m.mi->lock_object)) < 2) {
- regs[rd] = !(m.mi->mtx_lock & MTX_UNOWNED);
- } else {
- regs[rd] = !(m.mi->mtx_lock & SX_UNLOCKED);
+ if (!dtrace_canload(tupregs[0].dttk_value,
+ sizeof (struct lock_object), mstate, vstate)) {
+ regs[rd] = 0;
+ break;
}
-#endif
+ l.lx = dtrace_loadptr((uintptr_t)&tupregs[0].dttk_value);
+ regs[rd] = LOCK_CLASS(l.li)->lc_owner(l.li, &lowner);
break;
case DIF_SUBR_MUTEX_OWNER:
- /* XXX - need to use dtrace_canload() and dtrace_loadptr() */
- m.mx = tupregs[0].dttk_value;
-
- if (LO_CLASSINDEX(&(m.mi->lock_object)) < 2) {
- regs[rd] = m.mi->mtx_lock & ~MTX_FLAGMASK;
- } else {
- if (!(m.mi->mtx_lock & SX_LOCK_SHARED))
- regs[rd] = SX_OWNER(m.mi->mtx_lock);
- else
- regs[rd] = 0;
+ if (!dtrace_canload(tupregs[0].dttk_value,
+ sizeof (struct lock_object), mstate, vstate)) {
+ regs[rd] = 0;
+ break;
}
+ l.lx = dtrace_loadptr((uintptr_t)&tupregs[0].dttk_value);
+ LOCK_CLASS(l.li)->lc_owner(l.li, &lowner);
+ regs[rd] = (uintptr_t)lowner;
break;
case DIF_SUBR_MUTEX_TYPE_ADAPTIVE:
- /* XXX - need to use dtrace_canload() and dtrace_loadptr() */
- m.mx = tupregs[0].dttk_value;
-
- regs[rd] = (LO_CLASSINDEX(&(m.mi->lock_object)) != 0);
+ if (!dtrace_canload(tupregs[0].dttk_value, sizeof (struct mtx),
+ mstate, vstate)) {
+ regs[rd] = 0;
+ break;
+ }
+ l.lx = dtrace_loadptr((uintptr_t)&tupregs[0].dttk_value);
+ /* XXX - should be only LC_SLEEPABLE? */
+ regs[rd] = (LOCK_CLASS(l.li)->lc_flags &
+ (LC_SLEEPLOCK | LC_SLEEPABLE)) != 0;
break;
case DIF_SUBR_MUTEX_TYPE_SPIN:
- /* XXX - need to use dtrace_canload() and dtrace_loadptr() */
- m.mx = tupregs[0].dttk_value;
-
- regs[rd] = (LO_CLASSINDEX(&(m.mi->lock_object)) == 0);
+ if (!dtrace_canload(tupregs[0].dttk_value, sizeof (struct mtx),
+ mstate, vstate)) {
+ regs[rd] = 0;
+ break;
+ }
+ l.lx = dtrace_loadptr((uintptr_t)&tupregs[0].dttk_value);
+ regs[rd] = (LOCK_CLASS(l.li)->lc_flags & LC_SPINLOCK) != 0;
break;
case DIF_SUBR_RW_READ_HELD:
case DIF_SUBR_SX_SHARED_HELD:
- /* XXX - need to use dtrace_canload() and dtrace_loadptr() */
- s.sx = tupregs[0].dttk_value;
- regs[rd] = ((s.si->sx_lock & SX_LOCK_SHARED) &&
- (SX_OWNER(s.si->sx_lock) >> SX_SHARERS_SHIFT) != 0);
+ if (!dtrace_canload(tupregs[0].dttk_value, sizeof (uintptr_t),
+ mstate, vstate)) {
+ regs[rd] = 0;
+ break;
+ }
+ l.lx = dtrace_loadptr((uintptr_t)&tupregs[0].dttk_value);
+ regs[rd] = LOCK_CLASS(l.li)->lc_owner(l.li, &lowner) &&
+ lowner == NULL;
break;
case DIF_SUBR_RW_WRITE_HELD:
case DIF_SUBR_SX_EXCLUSIVE_HELD:
- /* XXX - need to use dtrace_canload() and dtrace_loadptr() */
- s.sx = tupregs[0].dttk_value;
- regs[rd] = (SX_OWNER(s.si->sx_lock) == (uintptr_t) curthread);
+ if (!dtrace_canload(tupregs[0].dttk_value, sizeof (uintptr_t),
+ mstate, vstate)) {
+ regs[rd] = 0;
+ break;
+ }
+ l.lx = dtrace_loadptr(tupregs[0].dttk_value);
+ LOCK_CLASS(l.li)->lc_owner(l.li, &lowner);
+ regs[rd] = (lowner == curthread);
break;
case DIF_SUBR_RW_ISWRITER:
case DIF_SUBR_SX_ISEXCLUSIVE:
- /* XXX - need to use dtrace_canload() and dtrace_loadptr() */
- s.sx = tupregs[0].dttk_value;
- regs[rd] = ((s.si->sx_lock & SX_LOCK_EXCLUSIVE_WAITERS) ||
- !(s.si->sx_lock & SX_LOCK_SHARED));
+ if (!dtrace_canload(tupregs[0].dttk_value, sizeof (uintptr_t),
+ mstate, vstate)) {
+ regs[rd] = 0;
+ break;
+ }
+ l.lx = dtrace_loadptr(tupregs[0].dttk_value);
+ regs[rd] = LOCK_CLASS(l.li)->lc_owner(l.li, &lowner) &&
+ lowner != NULL;
break;
#endif /* ! defined(sun) */
==== //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_acl.h#3 (text+ko) ====
@@ -188,10 +188,8 @@
#ifdef _KERNEL
void zfs_perm_init(struct znode *, struct znode *, int, vattr_t *,
dmu_tx_t *, cred_t *, zfs_acl_t *, zfs_fuid_info_t **);
-#ifdef TODO
int zfs_getacl(struct znode *, vsecattr_t *, boolean_t, cred_t *);
int zfs_setacl(struct znode *, vsecattr_t *, boolean_t, cred_t *);
-#endif
void zfs_acl_rele(void *);
void zfs_oldace_byteswap(ace_t *, int);
void zfs_ace_byteswap(void *, size_t, boolean_t);
==== //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_acl.c#4 (text+ko) ====
@@ -1909,7 +1909,6 @@
zfs_acl_free(aclp);
}
-#ifdef TODO
/*
* Retrieve a files ACL
*/
@@ -2005,7 +2004,6 @@
return (0);
}
-#endif /* TODO */
int
zfs_vsec_2_aclp(zfsvfs_t *zfsvfs, vtype_t obj_type,
@@ -2062,7 +2060,6 @@
return (0);
}
-#ifdef TODO
/*
* Set a files ACL
*/
@@ -2170,7 +2167,6 @@
return (error);
}
-#endif /* TODO */
/*
* working_mode returns the permissions that were not granted
==== //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#10 (text+ko) ====
@@ -45,7 +45,6 @@
#include <sys/errno.h>
#include <sys/unistd.h>
#include <sys/zfs_dir.h>
-#include <sys/zfs_acl.h>
#include <sys/zfs_ioctl.h>
#include <sys/fs/zfs.h>
#include <sys/dmu.h>
@@ -67,6 +66,7 @@
#include <sys/buf.h>
#include <sys/sf_buf.h>
#include <sys/sched.h>
+#include <sys/acl.h>
/*
* Programming rules.
@@ -3846,7 +3846,6 @@
}
}
-#ifdef TODO
/*ARGSUSED*/
static int
zfs_getsecattr(vnode_t *vp, vsecattr_t *vsecp, int flag, cred_t *cr,
@@ -3864,9 +3863,7 @@
return (error);
}
-#endif /* TODO */
-#ifdef TODO
/*ARGSUSED*/
static int
zfs_setsecattr(vnode_t *vp, vsecattr_t *vsecp, int flag, cred_t *cr,
@@ -3883,7 +3880,6 @@
ZFS_EXIT(zfsvfs);
return (error);
}
-#endif /* TODO */
static int
zfs_freebsd_open(ap)
@@ -3963,7 +3959,7 @@
zfs_freebsd_access(ap)
struct vop_access_args /* {
struct vnode *a_vp;
- int a_accmode;
+ accmode_t a_accmode;
struct ucred *a_cred;
struct thread *a_td;
} */ *ap;
@@ -4777,6 +4773,90 @@
return (error);
}
+int
+zfs_freebsd_getacl(ap)
+ struct vop_getacl_args /* {
+ struct vnode *vp;
+ acl_type_t type;
+ struct acl *aclp;
+ struct ucred *cred;
+ struct thread *td;
+ } */ *ap;
+{
+ int error;
+ vsecattr_t vsecattr;
+
+ if (ap->a_type != ACL_TYPE_NFS4)
+ return (EOPNOTSUPP);
+
+ vsecattr.vsa_mask = VSA_ACE | VSA_ACECNT;
+ if (error = zfs_getsecattr(ap->a_vp, &vsecattr, 0, ap->a_cred, NULL))
+ return (error);
+
+ error = acl_from_aces(ap->a_aclp, vsecattr.vsa_aclentp, vsecattr.vsa_aclcnt);
+ if (vsecattr.vsa_aclentp != NULL)
+ kmem_free(vsecattr.vsa_aclentp, vsecattr.vsa_aclentsz);
+
+ return (error);
+}
+
+int
+zfs_freebsd_setacl(ap)
+ struct vop_setacl_args /* {
+ struct vnode *vp;
+ acl_type_t type;
+ struct acl *aclp;
+ struct ucred *cred;
+ struct thread *td;
+ } */ *ap;
+{
+ int error;
+ vsecattr_t vsecattr;
+ int aclbsize; /* size of acl list in bytes */
+ aclent_t *aaclp;
+
+ if (ap->a_type != ACL_TYPE_NFS4)
+ return (EOPNOTSUPP);
+
+ if (ap->a_aclp->acl_cnt < 1 || ap->a_aclp->acl_cnt > MAX_ACL_ENTRIES)
+ return (EINVAL);
+
+ /*
+ * With NFS4 ACLs, chmod(2) may need to add additional entries,
+ * splitting every entry into two and appending "canonical six"
+ * entries at the end. Don't allow for setting an ACL that would
+ * cause chmod(2) to run out of ACL entries.
+ */
+ if (ap->a_aclp->acl_cnt * 2 + 6 > ACL_MAX_ENTRIES)
+ return (ENOSPC);
+
+ vsecattr.vsa_mask = VSA_ACE;
+ aclbsize = ap->a_aclp->acl_cnt * sizeof(ace_t);
+ vsecattr.vsa_aclentp = kmem_alloc(aclbsize, KM_SLEEP);
+ aaclp = vsecattr.vsa_aclentp;
+ vsecattr.vsa_aclentsz = aclbsize;
+
+ aces_from_acl(vsecattr.vsa_aclentp, &vsecattr.vsa_aclcnt, ap->a_aclp);
+ error = zfs_setsecattr(ap->a_vp, &vsecattr, 0, ap->a_cred, NULL);
+ kmem_free(aaclp, aclbsize);
+
+ return (error);
+}
+
+int
+zfs_freebsd_aclcheck(ap)
+ struct vop_aclcheck_args /* {
+ struct vnode *vp;
+ acl_type_t type;
+ struct acl *aclp;
+ struct ucred *cred;
+ struct thread *td;
+ } */ *ap;
+{
+
+ return (EOPNOTSUPP);
+}
+
struct vop_vector zfs_vnodeops;
struct vop_vector zfs_fifoops;
@@ -4816,6 +4896,11 @@
.vop_deleteextattr = zfs_deleteextattr,
.vop_setextattr = zfs_setextattr,
.vop_listextattr = zfs_listextattr,
+#ifdef notyet
+ .vop_getacl = zfs_freebsd_getacl,
+ .vop_setacl = zfs_freebsd_setacl,
+ .vop_aclcheck = zfs_freebsd_aclcheck,
+#endif
};
struct vop_vector zfs_fifoops = {
@@ -4829,4 +4914,9 @@
.vop_setattr = zfs_freebsd_setattr,
.vop_write = VOP_PANIC,
.vop_fid = zfs_freebsd_fid,
+#ifdef notyet
+ .vop_getacl = zfs_freebsd_getacl,
+ .vop_setacl = zfs_freebsd_setacl,
+ .vop_aclcheck = zfs_freebsd_aclcheck,
+#endif
};
==== //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/sys/acl.h#2 (text+ko) ====
@@ -31,12 +31,22 @@
#include <sys/types.h>
#include <sys/acl_impl.h>
+#if defined(_KERNEL)
+/*
+ * When compiling OpenSolaris kernel code, this file is getting
+ * included instead of FreeBSD one. Pull the original sys/acl.h as well.
+ */
+#undef _SYS_ACL_H
+#include_next <sys/acl.h>
+#define _SYS_ACL_H
+#endif /* _KERNEL */
+
#ifdef __cplusplus
extern "C" {
#endif
#define MAX_ACL_ENTRIES (1024) /* max entries of each type */
-typedef struct acl {
+typedef struct {
int a_type; /* the type of ACL entry */
uid_t a_id; /* the entry in -uid or gid */
o_mode_t a_perm; /* the permission field */
@@ -49,7 +59,9 @@
uint16_t a_type; /* allow or deny */
} ace_t;
+#if !defined(_KERNEL)
typedef struct acl_info acl_t;
+#endif
/*
* The following are Defined types for an aclent_t.
==== //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/sys/acl_impl.h#2 (text+ko) ====
@@ -44,10 +44,10 @@
typedef enum acl_type {
ACLENT_T = 0,
ACE_T = 1
-} acl_type_t;
+} zfs_acl_type_t;
struct acl_info {
- acl_type_t acl_type; /* style of acl */
+ zfs_acl_type_t acl_type; /* style of acl */
int acl_cnt; /* number of acl entries */
int acl_entry_size; /* sizeof acl entry */
int acl_flags; /* special flags about acl */
==== //depot/projects/usb/src/sys/compat/freebsd32/freebsd32_misc.c#17 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.89 2009/04/29 21:14:15 jamie Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.90 2009/05/27 14:11:23 jamie Exp $");
#include "opt_compat.h"
#include "opt_inet.h"
@@ -112,8 +112,6 @@
CTASSERT(sizeof(struct stat32) == 96);
CTASSERT(sizeof(struct sigaction32) == 24);
-extern int jail_max_af_ips;
-
static int freebsd32_kevent_copyout(void *arg, struct kevent *kevp, int count);
static int freebsd32_kevent_copyin(void *arg, struct kevent *kevp, int count);
@@ -2044,17 +2042,9 @@
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list