Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys



Module Name:    src
Committed By:   ad
Date:           Thu Apr 24 11:38:39 UTC 2008

Modified Files:
        src/sys/compat/common: uipc_syscalls_43.c
        src/sys/compat/linux/common: linux_socket.c
        src/sys/compat/svr4: svr4_net.c
        src/sys/dev: kttcp.c
        src/sys/dev/bluetooth: bthidev.c btsco.c
        src/sys/kern: kern_softint.c subr_pool.c subr_tftproot.c sys_socket.c
            uipc_domain.c uipc_proto.c uipc_socket.c uipc_socket2.c
            uipc_syscalls.c uipc_usrreq.c
        src/sys/miscfs/fifofs: fifo_vnops.c
        src/sys/miscfs/portal: portal_vnops.c
        src/sys/net: if.c if_etherip.c if_gre.c if_ppp.c if_pppoe.c if_sl.c
            if_strip.c raw_cb.c raw_usrreq.c rtsock.c
        src/sys/netatalk: aarp.c at_proto.c ddp_input.c ddp_usrreq.c
        src/sys/netbt: bluetooth.h bt_proto.c hci.h hci_event.c hci_link.c
            hci_socket.c hci_unit.c l2cap_misc.c l2cap_socket.c rfcomm_dlc.c
            rfcomm_session.c rfcomm_socket.c sco_socket.c
        src/sys/netinet: if_arp.c igmp.c in_pcb.c in_proto.c ip_encap.c
            ip_encap.h ip_flow.c ip_input.c raw_ip.c tcp_input.c tcp_subr.c
            tcp_timer.c tcp_usrreq.c tcp_var.h udp_usrreq.c
        src/sys/netinet6: ah.h ah_input.c esp.h esp_input.c frag6.c in6_gif.c
            in6_gif.h in6_ifattach.c in6_pcb.c in6_proto.c ip6_flow.c
            ip6_input.c ip6_mroute.c ip6_var.h ip6protosw.h mld6.c nd6.c
            nd6_nbr.c raw_ip6.c udp6_usrreq.c udp6_var.h
        src/sys/netipsec: key.c keysock.c xform_ipip.c
        src/sys/netiso: clnp_timer.c cltp_usrreq.c iso_pcb.c iso_proto.c
            tp_timer.c tp_usrreq.c
        src/sys/netkey: key.c keysock.c
        src/sys/netnatm: natm.c natm_proto.c
        src/sys/netsmb: smb_trantcp.c
        src/sys/nfs: krpc_subr.c nfs_boot.c nfs_bootdhcp.c nfs_socket.c
            nfs_syscalls.c
        src/sys/sys: protosw.h socketvar.h un.h unpcb.h

Log Message:
Merge the socket locking patch:

- Socket layer becomes MP safe.
- Unix protocols become MP safe.
- Allows protocol processing interrupts to safely block on locks.
- Fixes a number of race conditions.

With much feedback from matt@ and plunky@.


To generate a diff of this commit:
cvs rdiff -r1.41 -r1.42 src/sys/compat/common/uipc_syscalls_43.c
cvs rdiff -r1.90 -r1.91 src/sys/compat/linux/common/linux_socket.c
cvs rdiff -r1.51 -r1.52 src/sys/compat/svr4/svr4_net.c
cvs rdiff -r1.27 -r1.28 src/sys/dev/kttcp.c
cvs rdiff -r1.14 -r1.15 src/sys/dev/bluetooth/bthidev.c
cvs rdiff -r1.19 -r1.20 src/sys/dev/bluetooth/btsco.c
cvs rdiff -r1.15 -r1.16 src/sys/kern/kern_softint.c
cvs rdiff -r1.156 -r1.157 src/sys/kern/subr_pool.c
cvs rdiff -r1.4 -r1.5 src/sys/kern/subr_tftproot.c
cvs rdiff -r1.55 -r1.56 src/sys/kern/sys_socket.c
cvs rdiff -r1.75 -r1.76 src/sys/kern/uipc_domain.c
cvs rdiff -r1.20 -r1.21 src/sys/kern/uipc_proto.c
cvs rdiff -r1.159 -r1.160 src/sys/kern/uipc_socket.c
cvs rdiff -r1.90 -r1.91 src/sys/kern/uipc_socket2.c
cvs rdiff -r1.128 -r1.129 src/sys/kern/uipc_syscalls.c
cvs rdiff -r1.111 -r1.112 src/sys/kern/uipc_usrreq.c
cvs rdiff -r1.63 -r1.64 src/sys/miscfs/fifofs/fifo_vnops.c
cvs rdiff -r1.78 -r1.79 src/sys/miscfs/portal/portal_vnops.c
cvs rdiff -r1.218 -r1.219 src/sys/net/if.c
cvs rdiff -r1.18 -r1.19 src/sys/net/if_etherip.c src/sys/net/raw_cb.c
cvs rdiff -r1.129 -r1.130 src/sys/net/if_gre.c
cvs rdiff -r1.121 -r1.122 src/sys/net/if_ppp.c
cvs rdiff -r1.84 -r1.85 src/sys/net/if_pppoe.c
cvs rdiff -r1.110 -r1.111 src/sys/net/if_sl.c
cvs rdiff -r1.85 -r1.86 src/sys/net/if_strip.c
cvs rdiff -r1.33 -r1.34 src/sys/net/raw_usrreq.c
cvs rdiff -r1.100 -r1.101 src/sys/net/rtsock.c
cvs rdiff -r1.26 -r1.27 src/sys/netatalk/aarp.c
cvs rdiff -r1.15 -r1.16 src/sys/netatalk/at_proto.c
cvs rdiff -r1.18 -r1.19 src/sys/netatalk/ddp_input.c
cvs rdiff -r1.31 -r1.32 src/sys/netatalk/ddp_usrreq.c
cvs rdiff -r1.6 -r1.7 src/sys/netbt/bluetooth.h
cvs rdiff -r1.9 -r1.10 src/sys/netbt/bt_proto.c src/sys/netbt/sco_socket.c
cvs rdiff -r1.25 -r1.26 src/sys/netbt/hci.h
cvs rdiff -r1.17 -r1.18 src/sys/netbt/hci_event.c
cvs rdiff -r1.19 -r1.20 src/sys/netbt/hci_link.c
cvs rdiff -r1.14 -r1.15 src/sys/netbt/hci_socket.c
cvs rdiff -r1.10 -r1.11 src/sys/netbt/hci_unit.c
cvs rdiff -r1.5 -r1.6 src/sys/netbt/l2cap_misc.c
cvs rdiff -r1.7 -r1.8 src/sys/netbt/l2cap_socket.c
cvs rdiff -r1.4 -r1.5 src/sys/netbt/rfcomm_dlc.c
cvs rdiff -r1.12 -r1.13 src/sys/netbt/rfcomm_session.c
cvs rdiff -r1.8 -r1.9 src/sys/netbt/rfcomm_socket.c
cvs rdiff -r1.133 -r1.134 src/sys/netinet/if_arp.c
cvs rdiff -r1.47 -r1.48 src/sys/netinet/igmp.c
cvs rdiff -r1.122 -r1.123 src/sys/netinet/in_pcb.c
cvs rdiff -r1.93 -r1.94 src/sys/netinet/in_proto.c
cvs rdiff -r1.31 -r1.32 src/sys/netinet/ip_encap.c
cvs rdiff -r1.11 -r1.12 src/sys/netinet/ip_encap.h
cvs rdiff -r1.54 -r1.55 src/sys/netinet/ip_flow.c
cvs rdiff -r1.267 -r1.268 src/sys/netinet/ip_input.c
cvs rdiff -r1.106 -r1.107 src/sys/netinet/raw_ip.c
cvs rdiff -r1.285 -r1.286 src/sys/netinet/tcp_input.c
cvs rdiff -r1.227 -r1.228 src/sys/netinet/tcp_subr.c
cvs rdiff -r1.79 -r1.80 src/sys/netinet/tcp_timer.c
cvs rdiff -r1.143 -r1.144 src/sys/netinet/tcp_usrreq.c
cvs rdiff -r1.155 -r1.156 src/sys/netinet/tcp_var.h
cvs rdiff -r1.169 -r1.170 src/sys/netinet/udp_usrreq.c
cvs rdiff -r1.24 -r1.25 src/sys/netinet6/ah.h src/sys/netinet6/esp.h
cvs rdiff -r1.56 -r1.57 src/sys/netinet6/ah_input.c
cvs rdiff -r1.46 -r1.47 src/sys/netinet6/esp_input.c
cvs rdiff -r1.44 -r1.45 src/sys/netinet6/frag6.c src/sys/netinet6/mld6.c
cvs rdiff -r1.55 -r1.56 src/sys/netinet6/in6_gif.c
cvs rdiff -r1.12 -r1.13 src/sys/netinet6/in6_gif.h
cvs rdiff -r1.79 -r1.80 src/sys/netinet6/in6_ifattach.c
cvs rdiff -r1.96 -r1.97 src/sys/netinet6/in6_pcb.c
cvs rdiff -r1.81 -r1.82 src/sys/netinet6/in6_proto.c
cvs rdiff -r1.15 -r1.16 src/sys/netinet6/ip6_flow.c
cvs rdiff -r1.117 -r1.118 src/sys/netinet6/ip6_input.c
cvs rdiff -r1.91 -r1.92 src/sys/netinet6/ip6_mroute.c
cvs rdiff -r1.49 -r1.50 src/sys/netinet6/ip6_var.h
cvs rdiff -r1.19 -r1.20 src/sys/netinet6/ip6protosw.h
cvs rdiff -r1.125 -r1.126 src/sys/netinet6/nd6.c
cvs rdiff -r1.85 -r1.86 src/sys/netinet6/nd6_nbr.c
cvs rdiff -r1.97 -r1.98 src/sys/netinet6/raw_ip6.c
cvs rdiff -r1.83 -r1.84 src/sys/netinet6/udp6_usrreq.c
cvs rdiff -r1.22 -r1.23 src/sys/netinet6/udp6_var.h
cvs rdiff -r1.52 -r1.53 src/sys/netipsec/key.c
cvs rdiff -r1.15 -r1.16 src/sys/netipsec/keysock.c
cvs rdiff -r1.22 -r1.23 src/sys/netipsec/xform_ipip.c
cvs rdiff -r1.13 -r1.14 src/sys/netiso/clnp_timer.c
cvs rdiff -r1.32 -r1.33 src/sys/netiso/cltp_usrreq.c
cvs rdiff -r1.43 -r1.44 src/sys/netiso/iso_pcb.c
cvs rdiff -r1.27 -r1.28 src/sys/netiso/iso_proto.c
cvs rdiff -r1.18 -r1.19 src/sys/netiso/tp_timer.c
cvs rdiff -r1.34 -r1.35 src/sys/netiso/tp_usrreq.c
cvs rdiff -r1.158 -r1.159 src/sys/netkey/key.c
cvs rdiff -r1.46 -r1.47 src/sys/netkey/keysock.c
cvs rdiff -r1.14 -r1.15 src/sys/netnatm/natm.c
cvs rdiff -r1.12 -r1.13 src/sys/netnatm/natm_proto.c
cvs rdiff -r1.33 -r1.34 src/sys/netsmb/smb_trantcp.c
cvs rdiff -r1.32 -r1.33 src/sys/nfs/krpc_subr.c
cvs rdiff -r1.70 -r1.71 src/sys/nfs/nfs_boot.c
cvs rdiff -r1.37 -r1.38 src/sys/nfs/nfs_bootdhcp.c
cvs rdiff -r1.169 -r1.170 src/sys/nfs/nfs_socket.c
cvs rdiff -r1.133 -r1.134 src/sys/nfs/nfs_syscalls.c
cvs rdiff -r1.42 -r1.43 src/sys/sys/protosw.h src/sys/sys/un.h
cvs rdiff -r1.104 -r1.105 src/sys/sys/socketvar.h
cvs rdiff -r1.16 -r1.17 src/sys/sys/unpcb.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



Home | Main Index | Thread Index | Old Index