PERFORCE change 104792 for review
Alexander Leidinger
netchild at FreeBSD.org
Tue Aug 22 19:12:13 UTC 2006
http://perforce.freebsd.org/chv.cgi?CH=104792
Change 104792 by netchild at netchild_magellan on 2006/08/22 19:12:04
Final IFC to generate the diff of "the rest". The SoC is over now.
Affected files ...
.. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux.h#7 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_machdep.c#10 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/boot/arm/Makefile#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/boot/arm/at91/boot0/Makefile#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/boot/common/help.common#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/boot/common/loader.8#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/boot/ficl/arm/sysdep.c#1 branch
.. //depot/projects/soc2006/rdivacky_linuxolator/boot/ficl/arm/sysdep.h#1 branch
.. //depot/projects/soc2006/rdivacky_linuxolator/boot/forth/loader.conf#4 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/cam/scsi/scsi_all.c#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/cam/scsi/scsi_all.h#3 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_misc.c#25 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_signal.c#10 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/conf/files.pc98#3 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/dev/ata/ata-chipset.c#9 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/dev/bge/if_bge.c#6 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/dev/em/if_em.c#9 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/dev/iicbus/if_ic.c#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/dev/iicbus/iicbb.c#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_ioctl.h#3 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_pci.c#5 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#22 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/kern/sys_process.c#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_socket.c#7 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/modules/Makefile#8 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_fw.h#3 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_fw2.c#7 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/netsmb/smb_crypt.c#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/netsmb/smb_iod.c#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/netsmb/smb_rq.c#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/netsmb/smb_rq.h#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/pci/agp_amd64.c#3 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/pci/nfsmb.c#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/sys/sysctl.h#5 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/ufs/ffs/ffs_snapshot.c#2 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/ufs/ufs/ufs_vnops.c#3 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_object.c#7 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_page.c#8 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_pageq.c#3 integrate
.. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_zeroidle.c#2 integrate
Differences ...
==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux.h#7 (text+ko) ====
@@ -27,7 +27,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/linux32/linux.h,v 1.4 2006/08/16 18:54:50 netchild Exp $
+ * $FreeBSD: src/sys/amd64/linux32/linux.h,v 1.5 2006/08/19 15:13:01 netchild Exp $
*/
#ifndef _AMD64_LINUX_LINUX_H_
==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_machdep.c#10 (text+ko) ====
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.14 2006/08/16 18:54:50 netchild Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.15 2006/08/20 13:50:27 netchild Exp $");
#include <sys/param.h>
#include <sys/kernel.h>
==== //depot/projects/soc2006/rdivacky_linuxolator/boot/arm/Makefile#2 (text+ko) ====
@@ -1,5 +1,5 @@
-# $FreeBSD: src/sys/boot/arm/Makefile,v 1.1 2006/08/10 06:29:15 imp Exp $
+# $FreeBSD: src/sys/boot/arm/Makefile,v 1.2 2006/08/18 21:37:27 imp Exp $
-SUBDIR=
+SUBDIR=at91
.include <bsd.subdir.mk>
==== //depot/projects/soc2006/rdivacky_linuxolator/boot/arm/at91/boot0/Makefile#2 (text) ====
@@ -1,10 +1,10 @@
-# $FreeBSD: src/sys/boot/arm/at91/boot0/Makefile,v 1.3 2006/04/19 17:16:48 imp Exp $
+# $FreeBSD: src/sys/boot/arm/at91/boot0/Makefile,v 1.4 2006/08/18 20:26:54 imp Exp $
P=boot0
FILES=${P}
SRCS=arm_init.s main.c
NO_MAN=
-LDFLAGS=-e 0 -T linker.cfg
+LDFLAGS=-e 0 -T ${.CURDIR}/linker.cfg
OBJS+= ${SRCS:N*.h:R:S/$/.o/g}
.include <bsd.prog.mk>
==== //depot/projects/soc2006/rdivacky_linuxolator/boot/common/help.common#2 (text+ko) ====
@@ -294,7 +294,7 @@
Various kernel tunable parameters can be overridden by specifying new
values in the environment.
- set kern.ipc.nmbclusters=<value> NMBCLUSTERS
+ set kern.ipc.nmbclusters=<value>
Set the number of mbuf clusters to be allocated. The value
cannot be set below the default determined when the kernel
==== //depot/projects/soc2006/rdivacky_linuxolator/boot/common/loader.8#2 (text+ko) ====
@@ -22,9 +22,9 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.85 2006/05/12 04:09:52 jhb Exp $
+.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.88 2006/08/20 09:31:17 ru Exp $
.\"
-.Dd September 22, 2005
+.Dd August 18, 2006
.Dt LOADER 8
.Os
.Sh NAME
@@ -428,7 +428,7 @@
process.
The first matching binary is used.
The default list is
-.Dq Li /sbin/init:/sbin/oinit:/sbin/init.bak:/rescue/init:/stand/sysinstall .
+.Dq Li /sbin/init:/sbin/oinit:/sbin/init.bak:\:/rescue/init:/stand/sysinstall .
.It Va interpret
Has the value
.Dq Li OK
@@ -509,8 +509,6 @@
Set the number of mbuf clusters to be allocated.
The value cannot be set below the default
determined when the kernel was compiled.
-Modifies
-.Dv NMBCLUSTERS .
.It Va kern.ipc.nsfbufs
Set the number of
.Xr sendfile 2
@@ -534,7 +532,7 @@
this parameter if you need to greatly extend the
KVM reservation for other resources such as the
buffer cache or
-.Dv NMBCLUSTERS .
+.Va kern.ipc.nmbclusters .
Modifies
.Dv VM_SWZONE_SIZE_MAX .
.It Va kern.maxbcache
@@ -547,7 +545,7 @@
Only mess around with this parameter if you need to
greatly extend the KVM reservation for other resources
such as the swap zone or
-.Dv NMBCLUSTERS .
+.Va kern.ipc.nmbclusters .
Note that
the NBUF parameter will override this limit.
Modifies
==== //depot/projects/soc2006/rdivacky_linuxolator/boot/forth/loader.conf#4 (text+ko) ====
@@ -6,7 +6,7 @@
#
# All arguments must be in double quotes.
#
-# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.109 2006/08/14 18:04:01 brueffer Exp $
+# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.111 2006/08/18 19:03:28 brueffer Exp $
##############################################################
### Basic configuration options ############################
@@ -131,6 +131,7 @@
nullfs_load="NO" # Null filesystem
portalfs_load="NO" # Portal filesystem
procfs_load="NO" # Process filesystem
+reiserfs_load="NO" # ReiserFS
#umapfs_load="NO" # User-id map filesystem
unionfs_load="NO" # Union filesystem
xfs_load="NO" # XFS
@@ -228,12 +229,13 @@
if_ie_load="NO" # Intel 82586
if_ipw_load="NO" # Intel PRO/Wireless 2100 wireless
if_iwi_load="NO" # Intel PRO/Wireless 2200BG/2225BG/2915ABG wireless
+if_ixgb_load="NO" # Intel PRO/10Gb Ethernet
if_le_load="NO" # AMD Am7900 LANCE and Am79C9xx PCnet
if_lge_load="NO" # Level 1 LXT1001 NetCellerator PCI Gigabit Ethernet
-if_mxge_load="NO" # Myricom Myri10GE 10 Gigabit Ethernet
+if_mxge_load="NO" # Myricom Myri10GE 10Gb Ethernet
if_my_load="NO" # Myson PCI Fast Ethernet
+if_nfe_load="NO" # NVIDIA nForce MCP Networking Adapter
if_nge_load="NO" # National Semiconductor PCI Gigabit Ethernet
-if_nfe_load="NO" # NVIDIA nForce MCP Networking Adapter
if_nve_load="NO" # NVIDIA nForce MCP Networking Adapter
if_oltr_load="NO" # Olicom
if_pcn_load="NO" # AMD PCnet PCI
==== //depot/projects/soc2006/rdivacky_linuxolator/cam/scsi/scsi_all.c#2 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_all.c,v 1.48 2005/04/14 03:52:50 mjacob Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_all.c,v 1.49 2006/08/21 13:24:50 ken Exp $");
#include <sys/param.h>
@@ -2749,8 +2749,9 @@
void
scsi_report_luns(struct ccb_scsiio *csio, u_int32_t retries,
void (*cbfcnp)(struct cam_periph *, union ccb *),
- u_int8_t tag_action, struct scsi_report_luns_data *rpl_buf,
- u_int32_t alloc_len, u_int8_t sense_len, u_int32_t timeout)
+ u_int8_t tag_action, u_int8_t select_report,
+ struct scsi_report_luns_data *rpl_buf, u_int32_t alloc_len,
+ u_int8_t sense_len, u_int32_t timeout)
{
struct scsi_report_luns *scsi_cmd;
@@ -2767,7 +2768,8 @@
scsi_cmd = (struct scsi_report_luns *)&csio->cdb_io.cdb_bytes;
bzero(scsi_cmd, sizeof(*scsi_cmd));
scsi_cmd->opcode = REPORT_LUNS;
- scsi_ulto4b(alloc_len, scsi_cmd->addr);
+ scsi_cmd->select_report = select_report;
+ scsi_ulto4b(alloc_len, scsi_cmd->length);
}
/*
==== //depot/projects/soc2006/rdivacky_linuxolator/cam/scsi/scsi_all.h#3 (text+ko) ====
@@ -14,7 +14,7 @@
*
* Ported to run under 386BSD by Julian Elischer (julian at tfs.com) Sept 1992
*
- * $FreeBSD: src/sys/cam/scsi/scsi_all.h,v 1.25 2006/05/30 22:44:00 mjacob Exp $
+ * $FreeBSD: src/sys/cam/scsi/scsi_all.h,v 1.26 2006/08/21 13:24:50 ken Exp $
*/
/*
@@ -708,11 +708,16 @@
struct scsi_report_luns
{
- u_int8_t opcode;
- u_int8_t byte2;
- u_int8_t unused[3];
- u_int8_t addr[4];
- u_int8_t control;
+ uint8_t opcode;
+ uint8_t reserved1;
+#define RPL_REPORT_DEFAULT 0x00
+#define RPL_REPORT_WELLKNOWN 0x01
+#define RPL_REPORT_ALL 0x02
+ uint8_t select_report;
+ uint8_t reserved2[3];
+ uint8_t length[4];
+ uint8_t reserved3;
+ uint8_t control;
};
struct scsi_report_luns_data {
@@ -723,10 +728,22 @@
*/
struct {
u_int8_t lundata[8];
- } luns[1];
+ } luns[0];
};
+#define RPL_LUNDATA_PERIPH_BUS_MASK 0x3f
+#define RPL_LUNDATA_FLAT_LUN_MASK 0x3f
+#define RPL_LUNDATA_LUN_TARG_MASK 0x3f
+#define RPL_LUNDATA_LUN_BUS_MASK 0xe0
+#define RPL_LUNDATA_LUN_LUN_MASK 0x1f
+#define RPL_LUNDATA_EXT_LEN_MASK 0x30
+#define RPL_LUNDATA_EXT_EAM_MASK 0x0f
+#define RPL_LUNDATA_EXT_EAM_WK 0x01
+#define RPL_LUNDATA_EXT_EAM_NOT_SPEC 0x0f
#define RPL_LUNDATA_ATYP_MASK 0xc0 /* MBZ for type 0 lun */
-#define RPL_LUNDATA_T0LUN 1 /* @ lundata[1] */
+#define RPL_LUNDATA_ATYP_PERIPH 0x00
+#define RPL_LUNDATA_ATYP_FLAT 0x40
+#define RPL_LUNDATA_ATYP_LUN 0x80
+#define RPL_LUNDATA_ATYP_EXTLUN 0xc0
struct scsi_sense_data
@@ -1035,11 +1052,12 @@
uint32_t timeout);
void scsi_report_luns(struct ccb_scsiio *csio, u_int32_t retries,
- void (*cbfcnp)(struct cam_periph *,
- union ccb *), u_int8_t tag_action,
- struct scsi_report_luns_data *,
- u_int32_t alloc_len, u_int8_t sense_len,
- u_int32_t timeout);
+ void (*cbfcnp)(struct cam_periph *,
+ union ccb *), u_int8_t tag_action,
+ u_int8_t select_report,
+ struct scsi_report_luns_data *rpl_buf,
+ u_int32_t alloc_len, u_int8_t sense_len,
+ u_int32_t timeout);
void scsi_synchronize_cache(struct ccb_scsiio *csio,
u_int32_t retries,
==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_misc.c#25 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/linux/linux_misc.c,v 1.184 2006/08/17 21:21:30 netchild Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/linux/linux_misc.c,v 1.185 2006/08/20 13:50:26 netchild Exp $");
#include "opt_compat.h"
#include "opt_mac.h"
==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_signal.c#10 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/linux/linux_signal.c,v 1.58 2006/08/17 21:06:48 netchild Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/linux/linux_signal.c,v 1.59 2006/08/19 15:13:01 netchild Exp $");
#include <sys/param.h>
#include <sys/systm.h>
==== //depot/projects/soc2006/rdivacky_linuxolator/conf/files.pc98#3 (text+ko) ====
@@ -3,7 +3,7 @@
#
# modified for PC-9801/PC-9821
#
-# $FreeBSD: src/sys/conf/files.pc98,v 1.344 2006/07/29 18:38:53 marcel Exp $
+# $FreeBSD: src/sys/conf/files.pc98,v 1.345 2006/08/18 15:46:38 netchild Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -55,7 +55,9 @@
#
compat/linprocfs/linprocfs.c optional linprocfs
compat/linsysfs/linsysfs.c optional linsysfs
+compat/linux/linux_emul.c optional compat_linux
compat/linux/linux_file.c optional compat_linux
+compat/linux/linux_futex.c optional compat_linux
compat/linux/linux_getcwd.c optional compat_linux
compat/linux/linux_ioctl.c optional compat_linux
compat/linux/linux_ipc.c optional compat_linux
@@ -65,6 +67,7 @@
compat/linux/linux_socket.c optional compat_linux
compat/linux/linux_stats.c optional compat_linux
compat/linux/linux_sysctl.c optional compat_linux
+compat/linux/linux_time.c optional compat_linux
compat/linux/linux_uid16.c optional compat_linux
compat/linux/linux_util.c optional compat_linux
compat/pecoff/imgact_pecoff.c optional pecoff_support
==== //depot/projects/soc2006/rdivacky_linuxolator/dev/ata/ata-chipset.c#9 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.170 2006/08/18 00:01:29 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.171 2006/08/18 09:56:12 sos Exp $");
#include "opt_ata.h"
#include <sys/param.h>
@@ -2147,8 +2147,13 @@
if (!(idx = ata_match_chip(dev, ids)))
return ENXIO;
- sprintf(buffer, "JMicron %s %s controller",
- idx->text, ata_mode2str(idx->max_dma));
+ if ((pci_read_config(dev, 0xdf, 1) & 0x40) &&
+ (pci_get_function(dev) == (pci_read_config(dev, 0x40, 1) & 0x02 >> 1)))
+ sprintf(buffer, "JMicron %s %s controller",
+ idx->text, ata_mode2str(ATA_UDMA6));
+ else
+ sprintf(buffer, "JMicron %s %s controller",
+ idx->text, ata_mode2str(idx->max_dma));
device_set_desc_copy(dev, buffer);
ctlr->chip = idx;
ctlr->chipinit = ata_jmicron_chipinit;
@@ -2164,25 +2169,43 @@
if (ata_setup_interrupt(dev))
return ENXIO;
- /* set controller configuration to a setup we support */
- pci_write_config(dev, 0x40, 0x80c0a131, 4);
- pci_write_config(dev, 0x80, 0x01200000, 4);
+ /* do we have multiple PCI functions ? */
+ if (pci_read_config(dev, 0xdf, 1) & 0x40) {
+ /* if we have a memory BAR(5) we are on the AHCI part */
+ ctlr->r_type2 = SYS_RES_MEMORY;
+ ctlr->r_rid2 = PCIR_BAR(5);
+ if ((ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2,
+ &ctlr->r_rid2, RF_ACTIVE)))
+ return ata_ahci_chipinit(dev);
+
+ /* otherwise we are on the PATA part */
+ ctlr->allocate = ata_pci_allocate;
+ ctlr->reset = ata_generic_reset;
+ ctlr->dmainit = ata_pci_dmainit;
+ ctlr->setmode = ata_jmicron_setmode;
+ ctlr->channels = ctlr->chip->cfg2;
+ }
+ else {
+ /* set controller configuration to a combined setup we support */
+ pci_write_config(dev, 0x40, 0x80c0a131, 4);
+ pci_write_config(dev, 0x80, 0x01200000, 4);
+
+ ctlr->r_type2 = SYS_RES_MEMORY;
+ ctlr->r_rid2 = PCIR_BAR(5);
+ if ((ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2,
+ &ctlr->r_rid2, RF_ACTIVE))){
+ if ((error = ata_ahci_chipinit(dev)))
+ return error;
+ }
- ctlr->allocate = ata_jmicron_allocate;
- ctlr->reset = ata_jmicron_reset;
- ctlr->dmainit = ata_jmicron_dmainit;
- ctlr->setmode = ata_jmicron_setmode;
+ ctlr->allocate = ata_jmicron_allocate;
+ ctlr->reset = ata_jmicron_reset;
+ ctlr->dmainit = ata_jmicron_dmainit;
+ ctlr->setmode = ata_jmicron_setmode;
- ctlr->r_type2 = SYS_RES_MEMORY;
- ctlr->r_rid2 = PCIR_BAR(5);
- if ((ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2,
- &ctlr->r_rid2, RF_ACTIVE))) {
- if ((error = ata_ahci_chipinit(dev)))
- return error;
+ /* set the number of HW channels */
+ ctlr->channels = ctlr->chip->cfg1 + ctlr->chip->cfg2;
}
-
- /* set the number of HW channels */
- ctlr->channels = ctlr->chip->cfg1 + ctlr->chip->cfg2;
return 0;
}
@@ -2233,7 +2256,7 @@
struct ata_pci_controller *ctlr = device_get_softc(GRANDPARENT(dev));
struct ata_channel *ch = device_get_softc(device_get_parent(dev));
- if (ch->unit >= ctlr->chip->cfg1) {
+ if (pci_read_config(dev, 0xdf, 1) & 0x40 || ch->unit >= ctlr->chip->cfg1) {
struct ata_device *atadev = device_get_softc(dev);
/* check for 80pin cable present */
==== //depot/projects/soc2006/rdivacky_linuxolator/dev/bge/if_bge.c#6 (text+ko) ====
@@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.137 2006/08/17 09:53:04 glebius Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.138 2006/08/18 13:53:53 glebius Exp $");
/*
* Broadcom BCM570x family gigabit ethernet driver for FreeBSD.
@@ -2905,6 +2905,25 @@
uint16_t csum_flags;
int nsegs, i, error;
+ csum_flags = 0;
+ if (m->m_pkthdr.csum_flags) {
+ if (m->m_pkthdr.csum_flags & CSUM_IP)
+ csum_flags |= BGE_TXBDFLAG_IP_CSUM;
+ if (m->m_pkthdr.csum_flags & (CSUM_TCP | CSUM_UDP)) {
+ csum_flags |= BGE_TXBDFLAG_TCP_UDP_CSUM;
+ if (m->m_pkthdr.len < ETHER_MIN_NOPAD &&
+ (error = bge_cksum_pad(m)) != 0) {
+ m_freem(m);
+ *m_head = NULL;
+ return (error);
+ }
+ }
+ if (m->m_flags & M_LASTFRAG)
+ csum_flags |= BGE_TXBDFLAG_IP_FRAG_END;
+ else if (m->m_flags & M_FRAG)
+ csum_flags |= BGE_TXBDFLAG_IP_FRAG;
+ }
+
map = sc->bge_cdata.bge_tx_dmamap[idx];
error = bus_dmamap_load_mbuf_sg(sc->bge_cdata.bge_mtag, map, m, segs,
&nsegs, BUS_DMA_NOWAIT);
@@ -2935,26 +2954,6 @@
return (ENOBUFS);
}
- csum_flags = 0;
- if (m->m_pkthdr.csum_flags) {
- if (m->m_pkthdr.csum_flags & CSUM_IP)
- csum_flags |= BGE_TXBDFLAG_IP_CSUM;
- if (m->m_pkthdr.csum_flags & (CSUM_TCP | CSUM_UDP)) {
- csum_flags |= BGE_TXBDFLAG_TCP_UDP_CSUM;
- if (m->m_pkthdr.len < ETHER_MIN_NOPAD &&
- (error = bge_cksum_pad(m)) != 0) {
- bus_dmamap_unload(sc->bge_cdata.bge_mtag, map);
- m_freem(m);
- *m_head = NULL;
- return (error);
- }
- }
- if (m->m_flags & M_LASTFRAG)
- csum_flags |= BGE_TXBDFLAG_IP_FRAG_END;
- else if (m->m_flags & M_FRAG)
- csum_flags |= BGE_TXBDFLAG_IP_FRAG;
- }
-
bus_dmamap_sync(sc->bge_cdata.bge_mtag, map, BUS_DMASYNC_PREWRITE);
for (i = 0; ; i++) {
==== //depot/projects/soc2006/rdivacky_linuxolator/dev/em/if_em.c#9 (text+ko) ====
@@ -31,7 +31,7 @@
***************************************************************************/
-/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.132 2006/08/16 23:55:34 yongari Exp $*/
+/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.133 2006/08/22 02:32:48 yongari Exp $*/
#ifdef HAVE_KERNEL_OPTION_HEADERS
#include "opt_device_polling.h"
@@ -946,6 +946,18 @@
return;
}
+ /*
+ * Reclaim first as there is a possibility of losing Tx completion
+ * interrupts. Possible cause of missing Tx completion interrupts
+ * comes from Tx interrupt moderation mechanism(delayed interrupts)
+ * or chipset bug.
+ */
+ em_txeof(adapter);
+ if (adapter->num_tx_desc_avail == adapter->num_tx_desc) {
+ EM_UNLOCK(adapter);
+ return;
+ }
+
if (em_check_for_link(&adapter->hw) == 0)
device_printf(adapter->dev, "watchdog timeout -- resetting\n");
==== //depot/projects/soc2006/rdivacky_linuxolator/dev/iicbus/if_ic.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/iicbus/if_ic.c,v 1.25 2006/04/04 19:30:47 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/iicbus/if_ic.c,v 1.26 2006/08/21 17:32:50 imp Exp $");
/*
* I2C bus IP driver
@@ -267,7 +267,7 @@
* icintr()
*/
static void
-icintr (device_t dev, int event, char *ptr)
+icintr(device_t dev, int event, char *ptr)
{
struct ic_softc *sc = (struct ic_softc *)device_get_softc(dev);
int unit = device_get_unit(dev);
@@ -340,8 +340,8 @@
* icoutput()
*/
static int
-icoutput(struct ifnet *ifp, struct mbuf *m,
- struct sockaddr *dst, struct rtentry *rt)
+icoutput(struct ifnet *ifp, struct mbuf *m, struct sockaddr *dst,
+ struct rtentry *rt)
{
device_t icdev = devclass_get_device(ic_devclass, ifp->if_dunit);
device_t parent = device_get_parent(icdev);
==== //depot/projects/soc2006/rdivacky_linuxolator/dev/iicbus/iicbb.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/iicbus/iicbb.c,v 1.14 2006/04/04 23:29:17 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/iicbus/iicbb.c,v 1.15 2006/08/21 17:32:50 imp Exp $");
/*
* Generic I2C bit-banging code
@@ -104,14 +104,16 @@
devclass_t iicbb_devclass;
-static int iicbb_probe(device_t dev)
+static int
+iicbb_probe(device_t dev)
{
device_set_desc(dev, "I2C bit-banging driver");
return (0);
}
-static int iicbb_attach(device_t dev)
+static int
+iicbb_attach(device_t dev)
{
struct iicbb_softc *sc = (struct iicbb_softc *)device_get_softc(dev);
@@ -123,7 +125,8 @@
return (0);
}
-static int iicbb_detach(device_t dev)
+static int
+iicbb_detach(device_t dev)
{
struct iicbb_softc *sc = (struct iicbb_softc *)device_get_softc(dev);
@@ -188,7 +191,8 @@
printf(format, args); \
} while (0)
-static void iicbb_setscl(device_t dev, int val, int timeout)
+static void
+iicbb_setscl(device_t dev, int val, int timeout)
{
int k = 0;
@@ -203,7 +207,8 @@
return;
}
-static void iicbb_one(device_t dev, int timeout)
+static void
+iicbb_one(device_t dev, int timeout)
{
I2C_SET(dev,0,1);
I2C_SET(dev,1,1);
@@ -211,7 +216,8 @@
return;
}
-static void iicbb_zero(device_t dev, int timeout)
+static void
+iicbb_zero(device_t dev, int timeout)
{
I2C_SET(dev,0,0);
I2C_SET(dev,1,0);
@@ -233,7 +239,8 @@
* When the SLAVE has pulled this line low the MASTER will take the CLOCK
* line low and then the SLAVE will release the SDA (data) line.
*/
-static int iicbb_ack(device_t dev, int timeout)
+static int
+iicbb_ack(device_t dev, int timeout)
{
int noack;
int k = 0;
@@ -254,7 +261,8 @@
return (noack);
}
-static void iicbb_sendbyte(device_t dev, u_char data, int timeout)
+static void
+iicbb_sendbyte(device_t dev, u_char data, int timeout)
{
int i;
@@ -269,7 +277,8 @@
return;
}
-static u_char iicbb_readbyte(device_t dev, int last, int timeout)
+static u_char
+iicbb_readbyte(device_t dev, int last, int timeout)
{
int i;
unsigned char data=0;
@@ -291,17 +300,20 @@
return data;
}
-static int iicbb_callback(device_t dev, int index, caddr_t data)
+static int
+iicbb_callback(device_t dev, int index, caddr_t data)
{
return (IICBB_CALLBACK(device_get_parent(dev), index, data));
}
-static int iicbb_reset(device_t dev, u_char speed, u_char addr, u_char *oldaddr)
+static int
+iicbb_reset(device_t dev, u_char speed, u_char addr, u_char *oldaddr)
{
return (IICBB_RESET(device_get_parent(dev), speed, addr, oldaddr));
}
-static int iicbb_start(device_t dev, u_char slave, int timeout)
+static int
+iicbb_start(device_t dev, u_char slave, int timeout)
{
int error;
@@ -327,7 +339,8 @@
return (error);
}
-static int iicbb_stop(device_t dev)
+static int
+iicbb_stop(device_t dev)
{
I2C_SET(dev,0,0);
I2C_SET(dev,1,0);
@@ -336,8 +349,8 @@
return (0);
}
-static int iicbb_write(device_t dev, char * buf, int len, int *sent,
- int timeout)
+static int
+iicbb_write(device_t dev, char * buf, int len, int *sent, int timeout)
{
int bytes, error = 0;
@@ -360,8 +373,8 @@
return (error);
}
-static int iicbb_read(device_t dev, char * buf, int len, int *read,
- int last, int delay)
+static int
+iicbb_read(device_t dev, char * buf, int len, int *read, int last, int delay)
{
int bytes;
==== //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_ioctl.h#3 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/dev/isp/isp_ioctl.h,v 1.17 2006/08/04 20:14:03 mjacob Exp $ */
+/* $FreeBSD: src/sys/dev/isp/isp_ioctl.h,v 1.18 2006/08/21 00:46:10 mjacob Exp $ */
/*-
*
* Copyright (c) 1997-2006 by Matthew Jacob
@@ -61,9 +61,6 @@
#define ISP_ROLE_TARGET 0x1
#define ISP_ROLE_INITIATOR 0x2
#define ISP_ROLE_BOTH (ISP_ROLE_TARGET|ISP_ROLE_INITIATOR)
-#ifndef ISP_DEFAULT_ROLES
-#define ISP_DEFAULT_ROLES ISP_ROLE_BOTH
-#endif
/*
* Get the current adapter role
==== //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_pci.c#5 (text+ko) ====
@@ -30,7 +30,7 @@
* FreeBSD Version.
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/isp/isp_pci.c,v 1.119 2006/08/14 05:36:26 mjacob Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/isp/isp_pci.c,v 1.120 2006/08/21 00:46:10 mjacob Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -509,6 +509,12 @@
}
}
#endif
+ bitmap = 0;
+ if (getenv_int("role", &bitmap)) {
+ isp->isp_role = bitmap;
+ } else {
+ isp->isp_role = ISP_DEFAULT_ROLES;
+ }
}
static void
==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#22 (text+ko) ====
@@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: src/sys/i386/linux/linux.h,v 1.67 2006/08/16 18:54:50 netchild Exp $
+ * $FreeBSD: src/sys/i386/linux/linux.h,v 1.68 2006/08/19 15:13:01 netchild Exp $
*/
#ifndef _I386_LINUX_LINUX_H_
==== //depot/projects/soc2006/rdivacky_linuxolator/kern/sys_process.c#2 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/sys_process.c,v 1.137 2006/02/22 18:57:50 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/sys_process.c,v 1.138 2006/08/20 10:29:08 cperciva Exp $");
#include "opt_compat.h"
@@ -934,7 +934,7 @@
break;
case PT_LWPINFO:
- if (data == 0 || data > sizeof(*pl)) {
+ if (data <= 0 || data > sizeof(*pl)) {
error = EINVAL;
break;
}
==== //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_socket.c#7 (text+ko) ====
@@ -94,7 +94,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/uipc_socket.c,v 1.279 2006/08/11 23:03:10 rwatson Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/uipc_socket.c,v 1.280 2006/08/18 14:05:13 gnn Exp $");
#include "opt_inet.h"
#include "opt_mac.h"
@@ -1575,10 +1575,10 @@
}
cm = cmn;
}
- if (so->so_rcv.sb_mb)
+ if (m != NULL)
nextrecord = so->so_rcv.sb_mb->m_nextpkt;
else
- nextrecord = NULL;
+ nextrecord = so->so_rcv.sb_mb;
orig_resid = 0;
}
if (m != NULL) {
==== //depot/projects/soc2006/rdivacky_linuxolator/modules/Makefile#8 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/modules/Makefile,v 1.506 2006/08/01 22:19:00 sobomax Exp $
+# $FreeBSD: src/sys/modules/Makefile,v 1.507 2006/08/18 10:20:15 brueffer Exp $
.include <bsd.own.mk>
@@ -124,6 +124,7 @@
isp \
ispfw \
${_iwi} \
+ ${_ixgb} \
joy \
kbdmux \
kue \
@@ -416,6 +417,7 @@
_ips= ips
_ipw= ipw
_iwi= iwi
+_ixgb= ixgb
_mly= mly
_mxge= mxge
_nfe= nfe
@@ -465,6 +467,7 @@
_ips= ips
_ipw= ipw
_iwi= iwi
+_ixgb= ixgb
_linprocfs= linprocfs
_linsysfs= linsysfs
_linux= linux
==== //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_fw.h#3 (text+ko) ====
@@ -22,7 +22,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/netinet/ip_fw.h,v 1.107 2006/08/17 22:49:50 julian Exp $
+ * $FreeBSD: src/sys/netinet/ip_fw.h,v 1.108 2006/08/18 22:36:04 julian Exp $
*/
#ifndef _IPFW2_H
@@ -522,7 +522,6 @@
struct _ip6dn_args dummypar; /* dummynet->ip6_output */
struct sockaddr_in hopstore; /* store here if cannot use a pointer */
-
};
/*
==== //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_fw2.c#7 (text+ko) ====
@@ -22,7 +22,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/netinet/ip_fw2.c,v 1.143 2006/08/17 22:49:50 julian Exp $
+ * $FreeBSD: src/sys/netinet/ip_fw2.c,v 1.144 2006/08/18 22:36:04 julian Exp $
*/
#define DEB(x)
@@ -2791,7 +2791,8 @@
case O_LOG:
if (fw_verbose)
- ipfw_log(f, hlen, args, m, oif, offset, tablearg);
+ ipfw_log(f, hlen, args, m,
+ oif, offset, tablearg);
match = 1;
break;
@@ -3156,15 +3157,17 @@
if (sa->sin_addr.s_addr == INADDR_ANY) {
bcopy(sa, &args->hopstore,
sizeof(*sa));
- args->hopstore.sin_addr.s_addr = htonl(tablearg);
- args->next_hop = &args->hopstore;
+ args->hopstore.sin_addr.s_addr =
+ htonl(tablearg);
+ args->next_hop =
+ &args->hopstore;
} else {
args->next_hop = sa;
}
}
retval = IP_FW_PASS;
- }
- goto done;
+ }
+ goto done;
case O_NETGRAPH:
case O_NGTEE:
==== //depot/projects/soc2006/rdivacky_linuxolator/netsmb/smb_crypt.c#2 (text+ko) ====
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/netsmb/smb_crypt.c,v 1.9 2006/03/05 22:52:17 yar Exp $");
+__FBSDID("$FreeBSD: src/sys/netsmb/smb_crypt.c,v 1.10 2006/08/22 03:05:51 marcel Exp $");
#include <sys/param.h>
#include <sys/malloc.h>
@@ -241,8 +241,8 @@
}
/* Initialize sec. signature field to sequence number + zeros. */
- *(u_int32_t *)rqp->sr_rqsig = htole32(rqp->sr_seqno);
- *(u_int32_t *)(rqp->sr_rqsig + 4) = 0;
+ le32enc(rqp->sr_rqsig, rqp->sr_seqno);
+ le32enc(rqp->sr_rqsig + 4, 0);
/*
* Compute HMAC-MD5 of packet data, keyed by MAC key.
==== //depot/projects/soc2006/rdivacky_linuxolator/netsmb/smb_iod.c#2 (text+ko) ====
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/netsmb/smb_iod.c,v 1.16 2005/01/07 01:45:49 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/netsmb/smb_iod.c,v 1.17 2006/08/22 03:05:51 marcel Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -244,8 +244,8 @@
if (vcp->vc_maxmux != 0 && iod->iod_muxcnt >= vcp->vc_maxmux)
return 0;
#endif
- *rqp->sr_rqtid = htole16(ssp ? ssp->ss_tid : SMB_TID_UNKNOWN);
- *rqp->sr_rquid = htole16(vcp ? vcp->vc_smbuid : 0);
+ le16enc(rqp->sr_rqtid, ssp ? ssp->ss_tid : SMB_TID_UNKNOWN);
+ le16enc(rqp->sr_rquid, vcp ? vcp->vc_smbuid : 0);
mb_fixhdr(&rqp->sr_rq);
if (vcp->vc_hflags2 & SMB_FLAGS2_SECURITY_SIGNATURE)
smb_rq_sign(rqp);
==== //depot/projects/soc2006/rdivacky_linuxolator/netsmb/smb_rq.c#2 (text+ko) ====
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/netsmb/smb_rq.c,v 1.16 2005/01/07 01:45:49 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/netsmb/smb_rq.c,v 1.17 2006/08/22 03:05:51 marcel Exp $");
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list