From owner-p4-projects@FreeBSD.ORG Sun Aug 20 00:01:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 678DA16A4E1; Sun, 20 Aug 2006 00:01:10 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 29EFF16A4DD for ; Sun, 20 Aug 2006 00:01:10 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D26D843D46 for ; Sun, 20 Aug 2006 00:01:09 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7K019ma029750 for ; Sun, 20 Aug 2006 00:01:09 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7K019FQ029747 for perforce@freebsd.org; Sun, 20 Aug 2006 00:01:09 GMT (envelope-from jb@freebsd.org) Date: Sun, 20 Aug 2006 00:01:09 GMT Message-Id: <200608200001.k7K019FQ029747@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 104573 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Aug 2006 00:01:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=104573 Change 104573 by jb@jb_zoo on 2006/08/20 00:00:18 Handle newline characters properly in the puts method. Affected files ... .. //depot/projects/dtrace/src/sys/dev/sio/sio.c#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/dev/sio/sio.c#5 (text+ko) ==== @@ -2534,8 +2534,11 @@ { int i; - for (i = 0; i < num; i++) + for (i = 0; i < num; i++) { + if (p[i] == '\n') + sio_cnputc(cp, '\r'); sio_cnputc(cd, p[i] & 0xff); + } } static void From owner-p4-projects@FreeBSD.ORG Sun Aug 20 00:02:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0DA7F16A4EF; Sun, 20 Aug 2006 00:02:12 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E0AE716A4DE for ; Sun, 20 Aug 2006 00:02:11 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 979EF43D49 for ; Sun, 20 Aug 2006 00:02:11 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7K02BpC029863 for ; Sun, 20 Aug 2006 00:02:11 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7K02B50029860 for perforce@freebsd.org; Sun, 20 Aug 2006 00:02:11 GMT (envelope-from jb@freebsd.org) Date: Sun, 20 Aug 2006 00:02:11 GMT Message-Id: <200608200002.k7K02B50029860@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 104574 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Aug 2006 00:02:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=104574 Change 104574 by jb@jb_zoo on 2006/08/20 00:02:07 Oops. Fix a cut'n'paste error. Affected files ... .. //depot/projects/dtrace/src/sys/dev/sio/sio.c#6 edit Differences ... ==== //depot/projects/dtrace/src/sys/dev/sio/sio.c#6 (text+ko) ==== @@ -2536,7 +2536,7 @@ for (i = 0; i < num; i++) { if (p[i] == '\n') - sio_cnputc(cp, '\r'); + sio_cnputc(cd, '\r'); sio_cnputc(cd, p[i] & 0xff); } } From owner-p4-projects@FreeBSD.ORG Sun Aug 20 07:57:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 33A7E16A4DF; Sun, 20 Aug 2006 07:57:21 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ECFF616A4DA for ; Sun, 20 Aug 2006 07:57:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 96E2A43D45 for ; Sun, 20 Aug 2006 07:57:20 +0000 (GMT) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7K7vKjk078489 for ; Sun, 20 Aug 2006 07:57:20 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7K7vKvM078486 for perforce@freebsd.org; Sun, 20 Aug 2006 07:57:20 GMT (envelope-from hselasky@FreeBSD.org) Date: Sun, 20 Aug 2006 07:57:20 GMT Message-Id: <200608200757.k7K7vKvM078486@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 104584 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Aug 2006 07:57:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=104584 Change 104584 by hselasky@hselasky_mini_itx on 2006/08/20 07:57:10 Added support for USB MIDI cables to uaudio. Affected files ... .. //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#3 edit Differences ... ==== //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#3 (text+ko) ==== @@ -164,11 +164,58 @@ u_int8_t iface_alt_index; }; +#define UMIDI_N_TRANSFER 4 /* units */ +#define UMIDI_CABLES_MAX 16 /* units */ +#define UMIDI_BULK_SIZE 1024 /* bytes */ + +struct umidi_sub_chan { + struct usb_cdev cdev; + u_int8_t * temp_cmd; + u_int8_t temp_0[4]; + u_int8_t temp_1[4]; + u_int8_t state; +#define UMIDI_ST_UNKNOWN 0 /* scan for command */ +#define UMIDI_ST_1PARAM 1 +#define UMIDI_ST_2PARAM_1 2 +#define UMIDI_ST_2PARAM_2 3 +#define UMIDI_ST_SYSEX_0 4 +#define UMIDI_ST_SYSEX_1 5 +#define UMIDI_ST_SYSEX_2 6 + + u_int8_t read_open : 1; + u_int8_t write_open : 1; + u_int8_t unused : 6; +}; + +struct umidi_chan { + + struct umidi_sub_chan sub[UMIDI_CABLES_MAX]; + struct usbd_memory_wait mem_wait; + struct mtx mtx; + + struct usbd_xfer *xfer[UMIDI_N_TRANSFER]; + + u_int8_t iface_index; + u_int8_t iface_alt_index; + + u_int8_t flags; +#define UMIDI_FLAG_READ_STALL 0x01 +#define UMIDI_FLAG_WRITE_STALL 0x02 + + u_int8_t read_open_refcount; + u_int8_t write_open_refcount; + + u_int8_t curr_cable; + u_int8_t max_cable; + u_int8_t valid; +}; + struct uaudio_softc { struct sbuf sc_sndstat; struct sndcard_func sc_sndcard_func; struct uaudio_chan sc_rec_chan; struct uaudio_chan sc_play_chan; + struct umidi_chan sc_midi_chan; struct usbd_memory_wait sc_mixer_mem; struct usbd_device * sc_udev; @@ -373,7 +420,55 @@ static void uaudio_mixer_init(struct uaudio_softc *sc); -static const struct usbd_config uaudio_cfg_record_full_speed[UAUDIO_NCHANBUFS] = { +static void +umidi_read_clear_stall_callback(struct usbd_xfer *xfer); + +static void +umidi_bulk_read_callback(struct usbd_xfer *xfer); + +static void +umidi_write_clear_stall_callback(struct usbd_xfer *xfer); + +static u_int8_t +umidi_convert_to_usb(struct umidi_sub_chan *sub, u_int8_t cn, u_int8_t b); + +static void +umidi_bulk_write_callback(struct usbd_xfer *xfer); + +static struct umidi_sub_chan * +umidi_sub_by_cdev(struct usb_cdev *cdev); + +static void +umidi_start_read(struct usb_cdev *cdev); + +static void +umidi_stop_read(struct usb_cdev *cdev); + +static void +umidi_start_write(struct usb_cdev *cdev); + +static void +umidi_stop_write(struct usb_cdev *cdev); + +static int32_t +umidi_open(struct usb_cdev *cdev, int32_t fflags, + int32_t devtype, struct thread *td); + +static int32_t +umidi_ioctl(struct usb_cdev *cdev, u_long cmd, caddr_t data, + int32_t fflags, struct thread *td); +static void +umidi_init(device_t dev); + +static int32_t +umidi_probe(device_t dev); + +static int32_t +umidi_detach(device_t dev); + + +static const struct usbd_config +uaudio_cfg_record_full_speed[UAUDIO_NCHANBUFS] = { [0] = { .type = UE_ISOCHRONOUS, .endpoint = -1, /* any */ @@ -395,7 +490,8 @@ }, }; -static const struct usbd_config uaudio_cfg_record_high_speed[UAUDIO_NCHANBUFS] = { +static const struct usbd_config +uaudio_cfg_record_high_speed[UAUDIO_NCHANBUFS] = { [0] = { .type = UE_ISOCHRONOUS, .endpoint = -1, /* any */ @@ -417,7 +513,8 @@ }, }; -static const struct usbd_config uaudio_cfg_play_full_speed[UAUDIO_NCHANBUFS] = { +static const struct usbd_config +uaudio_cfg_play_full_speed[UAUDIO_NCHANBUFS] = { [0] = { .type = UE_ISOCHRONOUS, .endpoint = -1, /* any */ @@ -439,7 +536,8 @@ }, }; -static const struct usbd_config uaudio_cfg_play_high_speed[UAUDIO_NCHANBUFS] = { +static const struct usbd_config +uaudio_cfg_play_high_speed[UAUDIO_NCHANBUFS] = { [0] = { .type = UE_ISOCHRONOUS, .endpoint = -1, /* any */ @@ -461,7 +559,8 @@ }, }; -static const struct usbd_config uaudio_mixer_config[1] = { +static const struct usbd_config +uaudio_mixer_config[1] = { [0] = { .type = UE_CONTROL, .endpoint = 0x00, /* Control pipe */ @@ -472,6 +571,66 @@ }, }; +static const +u_int8_t umidi_cmd_to_len[16] = { + [0x0] = 0, /* reserved */ + [0x1] = 0, /* reserved */ + [0x2] = 2, /* bytes */ + [0x3] = 3, /* bytes */ + [0x4] = 3, /* bytes */ + [0x5] = 1, /* bytes */ + [0x6] = 2, /* bytes */ + [0x7] = 3, /* bytes */ + [0x8] = 3, /* bytes */ + [0x9] = 3, /* bytes */ + [0xA] = 3, /* bytes */ + [0xB] = 3, /* bytes */ + [0xC] = 2, /* bytes */ + [0xD] = 2, /* bytes */ + [0xE] = 3, /* bytes */ + [0xF] = 1, /* bytes */ +}; + +static const struct usbd_config +umidi_config[UMIDI_N_TRANSFER] = { + [0] = { + .type = UE_BULK, + .endpoint = -1, /* any */ + .direction = UE_DIR_OUT, + .bufsize = UMIDI_BULK_SIZE, + .flags = (USBD_USE_DMA|USBD_SHORT_XFER_OK), + .callback = &umidi_bulk_write_callback, + }, + + [1] = { + .type = UE_BULK, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .bufsize = UMIDI_BULK_SIZE, + .flags = (USBD_USE_DMA|USBD_SHORT_XFER_OK), + .callback = &umidi_bulk_read_callback, + }, + + [2] = { + .type = UE_CONTROL, + .endpoint = 0x00, /* Control pipe */ + .direction = -1, + .bufsize = sizeof(usb_device_request_t), + .flags = USBD_USE_DMA, + .callback = &umidi_write_clear_stall_callback, + .timeout = 1000, /* 1 second */ + }, + + [3] = { + .type = UE_CONTROL, + .endpoint = 0x00, /* Control pipe */ + .direction = -1, + .bufsize = sizeof(usb_device_request_t), + .flags = USBD_USE_DMA, + .callback = &umidi_read_clear_stall_callback, + .timeout = 1000, /* 1 second */ + }, +}; static devclass_t uaudio_devclass; @@ -528,6 +687,8 @@ sc->sc_rec_chan.priv_sc = sc; sc->sc_udev = uaa->device; + umidi_init(dev); + usbd_set_desc(dev, uaa->device); id = usbd_get_interface_descriptor(uaa->iface); @@ -564,8 +725,22 @@ device_printf(dev, "No recording!\n"); } - device_printf(dev, "WARNING: Unplugging the device while " - "it is in use will cause a panic!\n"); + if (sc->sc_midi_chan.valid) { + + if (umidi_probe(dev)) { + goto detach; + } + + device_printf(dev, "MIDI sequencer\n"); + } else { + device_printf(dev, "No midi sequencer\n"); + } + + if (sc->sc_play_chan.valid || + sc->sc_rec_chan.valid) { + device_printf(dev, "WARNING: Unplugging the device while " + "it is in use will cause a panic!\n"); + } DPRINTF(0, "doing child attach\n"); @@ -689,6 +864,8 @@ sbuf_delete(&(sc->sc_sndstat)); sc->sc_sndstat_valid = 0; + umidi_detach(dev); + return 0; } @@ -765,6 +942,19 @@ audio_if = 0; } + if ((id->bInterfaceClass == UICLASS_AUDIO) && + (id->bInterfaceSubClass == UISUBCLASS_MIDISTREAM)) { + + /* XXX could allow multiple MIDI interfaces XXX */ + + if ((sc->sc_midi_chan.valid == 0) && + usbd_get_iface(udev, curidx)) { + sc->sc_midi_chan.iface_index = curidx; + sc->sc_midi_chan.iface_alt_index = alt_index; + sc->sc_midi_chan.valid = 1; + } + } + asid = NULL; asf1d = NULL; ed1 = NULL; @@ -3071,6 +3261,599 @@ return src; } +/*========================================================================* + * MIDI support routines + *========================================================================*/ + +static void +umidi_read_clear_stall_callback(struct usbd_xfer *xfer) +{ + struct umidi_chan *chan = xfer->priv_sc; + struct usbd_xfer *xfer_other = chan->xfer[1]; + u_int32_t n; + + USBD_CHECK_STATUS(xfer); + + tr_setup: + /* start clear stall */ + usbd_clear_stall_tr_setup(xfer, xfer_other); + return; + + tr_transferred: + usbd_clear_stall_tr_transferred(xfer, xfer_other); + + chan->flags &= ~UMIDI_FLAG_READ_STALL; + usbd_transfer_start(xfer_other); + return; + + tr_error: + /* bomb out */ + chan->flags &= ~UMIDI_FLAG_READ_STALL; + + if (xfer->error != USBD_CANCELLED) { + for (n = 0; n < chan->max_cable; n++) { + if (chan->sub[n].read_open) { + usb_cdev_put_data_error(&(chan->sub[n].cdev)); + } + } + } + return; +} + +static void +umidi_bulk_read_callback(struct usbd_xfer *xfer) +{ + struct umidi_chan *chan = xfer->priv_sc; + struct umidi_sub_chan *sub; + u_int8_t buf[4]; + u_int8_t cmd_len; + u_int8_t cn; + u_int16_t pos; + + USBD_CHECK_STATUS(xfer); + + tr_error: + + DPRINTF(0, "error=%s\n", usbd_errstr(xfer->error)); + + if (xfer->error != USBD_CANCELLED) { + /* try to clear stall first */ + chan->flags |= UMIDI_FLAG_READ_STALL; + usbd_transfer_start(chan->xfer[3]); + } + return; + + tr_transferred: + + DPRINTF(0, "actlen=%d bytes\n", xfer->actlen); + + if (xfer->actlen == 0) { + /* should not happen */ + goto tr_error; + } + + pos = 0; + + while (xfer->actlen >= 4) { + + usbd_copy_out(&(xfer->buf_data), pos, buf, 4); + + cmd_len = umidi_cmd_to_len[buf[0] & 0xF]; /* command length */ + cn = buf[0] >> 4; /* cable number */ + sub = &(chan->sub[cn]); + + if (cmd_len && (cn < chan->max_cable) && sub->read_open) { + usb_cdev_put_data(&(sub->cdev), buf+1, cmd_len, 1); + } else { + /* ignore the command */ + } + + xfer->actlen -= 4; + pos += 4; + } + + tr_setup: + DPRINTF(0, "start\n"); + + if (chan->flags & UMIDI_FLAG_READ_STALL) { + usbd_transfer_start(chan->xfer[3]); + return; + } + usbd_start_hardware(xfer); + return; +} + +static void +umidi_write_clear_stall_callback(struct usbd_xfer *xfer) +{ + struct umidi_chan *chan = xfer->priv_sc; + struct usbd_xfer *xfer_other = chan->xfer[0]; + u_int32_t n; + + USBD_CHECK_STATUS(xfer); + + tr_setup: + /* start clear stall */ + usbd_clear_stall_tr_setup(xfer, xfer_other); + return; + + tr_transferred: + usbd_clear_stall_tr_transferred(xfer, xfer_other); + chan->flags &= ~UMIDI_FLAG_WRITE_STALL; + usbd_transfer_start(xfer_other); + return; + + tr_error: + /* bomb out */ + chan->flags &= ~UMIDI_FLAG_WRITE_STALL; + if (xfer->error != USBD_CANCELLED) { + for (n = 0; n < chan->max_cable; n++) { + if (chan->sub[n].write_open) { + usb_cdev_get_data_error(&(chan->sub[n].cdev)); + } + } + } + return; +} + +/* + * the following statemachine, that converts MIDI commands to + * USB MIDI packets, derives from Linux's usbmidi.c, which + * was written by "Clemens Ladisch": + * + * return values: + * 0: No command + * Else: Command is complete + */ +static u_int8_t +umidi_convert_to_usb(struct umidi_sub_chan *sub, u_int8_t cn, u_int8_t b) +{ + u_int8_t p0 = (cn << 4); + + if (b >= 0xf8) { + sub->temp_0[0] = p0 | 0x0f; + sub->temp_0[1] = b; + sub->temp_0[2] = 0; + sub->temp_0[3] = 0; + sub->temp_cmd = sub->temp_0; + return 1; + + } else if (b >= 0xf0) { + switch (b) { + case 0xf0: /* system exclusive begin */ + sub->temp_1[1] = b; + sub->state = UMIDI_ST_SYSEX_1; + break; + case 0xf1: /* MIDI time code */ + case 0xf3: /* song select */ + sub->temp_1[1] = b; + sub->state = UMIDI_ST_1PARAM; + break; + case 0xf2: /* song position pointer */ + sub->temp_1[1] = b; + sub->state = UMIDI_ST_2PARAM_1; + break; + case 0xf4: /* unknown */ + case 0xf5: /* unknown */ + sub->state = UMIDI_ST_UNKNOWN; + break; + case 0xf6: /* tune request */ + sub->temp_1[0] = p0 | 0x05; + sub->temp_1[1] = 0xf6; + sub->temp_1[2] = 0; + sub->temp_1[3] = 0; + sub->temp_cmd = sub->temp_1; + sub->state = UMIDI_ST_UNKNOWN; + return 1; + + case 0xf7: /* system exclusive end */ + switch (sub->state) { + case UMIDI_ST_SYSEX_0: + sub->temp_1[0] = p0 | 0x05; + sub->temp_1[1] = 0xf7; + sub->temp_1[2] = 0; + sub->temp_1[3] = 0; + sub->temp_cmd = sub->temp_1; + sub->state = UMIDI_ST_UNKNOWN; + return 1; + case UMIDI_ST_SYSEX_1: + sub->temp_1[0] = p0 | 0x06; + sub->temp_1[2] = 0xf7; + sub->temp_1[3] = 0; + sub->temp_cmd = sub->temp_1; + sub->state = UMIDI_ST_UNKNOWN; + return 1; + case UMIDI_ST_SYSEX_2: + sub->temp_1[0] = p0 | 0x07; + sub->temp_1[3] = 0xf7; + sub->temp_cmd = sub->temp_1; + sub->state = UMIDI_ST_UNKNOWN; + return 1; + } + sub->state = UMIDI_ST_UNKNOWN; + break; + } + } else if (b >= 0x80) { + sub->temp_1[1] = b; + if ((b >= 0xc0) && (b <= 0xdf)) { + sub->state = UMIDI_ST_1PARAM; + } else { + sub->state = UMIDI_ST_2PARAM_1; + } + } else { /* b < 0x80 */ + switch (sub->state) { + case UMIDI_ST_1PARAM: + if (sub->temp_1[1] < 0xf0) { + p0 |= sub->temp_1[1] >> 4; + } else { + p0 |= 0x02; + sub->state = UMIDI_ST_UNKNOWN; + } + sub->temp_1[0] = p0; + sub->temp_1[2] = b; + sub->temp_1[3] = 0; + sub->temp_cmd = sub->temp_1; + return 1; + case UMIDI_ST_2PARAM_1: + sub->temp_1[2] = b; + sub->state = UMIDI_ST_2PARAM_2; + break; + case UMIDI_ST_2PARAM_2: + if (sub->temp_1[1] < 0xf0) { + p0 |= sub->temp_1[1] >> 4; + sub->state = UMIDI_ST_2PARAM_1; + } else { + p0 |= 0x03; + sub->state = UMIDI_ST_UNKNOWN; + } + sub->temp_1[0] = p0; + sub->temp_1[3] = b; + sub->temp_cmd = sub->temp_1; + return 1; + case UMIDI_ST_SYSEX_0: + sub->temp_1[1] = b; + sub->state = UMIDI_ST_SYSEX_1; + break; + case UMIDI_ST_SYSEX_1: + sub->temp_1[2] = b; + sub->state = UMIDI_ST_SYSEX_2; + break; + case UMIDI_ST_SYSEX_2: + sub->temp_1[0] = p0 | 0x04; + sub->temp_1[3] = b; + sub->temp_cmd = sub->temp_1; + sub->state = UMIDI_ST_SYSEX_0; + return 1; + } + } + return 0; +} + +static void +umidi_bulk_write_callback(struct usbd_xfer *xfer) +{ + struct umidi_chan *chan = xfer->priv_sc; + struct umidi_sub_chan *sub; + u_int32_t actlen; + u_int16_t total_length; + u_int8_t buf; + u_int8_t start_cable; + u_int8_t tr_any; + + USBD_CHECK_STATUS(xfer); + + tr_error: + + DPRINTF(0, "error=%s\n", usbd_errstr(xfer->error)); + + if (xfer->error != USBD_CANCELLED) { + /* try to clear stall first */ + chan->flags |= UMIDI_FLAG_WRITE_STALL; + usbd_transfer_start(chan->xfer[2]); + } + return; + + tr_transferred: + DPRINTF(0, "actlen=%d bytes\n", xfer->actlen); + + tr_setup: + + DPRINTF(0, "start\n"); + + if (chan->flags & UMIDI_FLAG_WRITE_STALL) { + usbd_transfer_start(chan->xfer[2]); + return; + } + + total_length = 0; /* reset */ + + start_cable = chan->curr_cable; + + tr_any = 0; + + while (1) { + + /* round robin de-queueing */ + + sub = &(chan->sub[chan->curr_cable]); + + if (sub->write_open) { + usb_cdev_get_data(&(sub->cdev), &buf, 1, &actlen, 0); + } else { + actlen = 0; + } + + if (actlen) { + tr_any = 1; + + DPRINTF(0, "byte=0x%02x\n", buf); + + if (umidi_convert_to_usb(sub, chan->curr_cable, buf)) { + + DPRINTF(0, "sub= %02x %02x %02x %02x\n", + sub->temp_cmd[0], sub->temp_cmd[1], + sub->temp_cmd[2], sub->temp_cmd[3]); + + usbd_copy_in(&(xfer->buf_data), total_length, + sub->temp_cmd, 4); + + total_length += 4; + + if (total_length >= UMIDI_BULK_SIZE) { + break; + } + + } else { + continue; + } + } + + chan->curr_cable ++; + if (chan->curr_cable >= chan->max_cable) { + chan->curr_cable = 0; + } + if (chan->curr_cable == start_cable) { + if (tr_any == 0) { + break; + } + tr_any = 0; + } + } + + if (total_length) { + xfer->length = total_length; + usbd_start_hardware(xfer); + } + return; +} + +static struct umidi_sub_chan * +umidi_sub_by_cdev(struct usb_cdev *cdev) +{ + struct umidi_chan *chan = cdev->sc_priv_ptr; + struct umidi_sub_chan *sub; + u_int32_t n; + + for (n = 0; n < UMIDI_CABLES_MAX; n++) { + sub = &(chan->sub[n]); + if ((&(sub->cdev)) == cdev) { + return sub; + } + } + + panic("%s:%d cannot find usb_cdev!\n", + __FILE__, __LINE__); + + return NULL; +} + +static void +umidi_start_read(struct usb_cdev *cdev) +{ + struct umidi_chan *chan = cdev->sc_priv_ptr; + usbd_transfer_start(chan->xfer[1]); + return; +} + +static void +umidi_stop_read(struct usb_cdev *cdev) +{ + struct umidi_chan *chan = cdev->sc_priv_ptr; + struct umidi_sub_chan *sub = umidi_sub_by_cdev(cdev); + + DPRINTF(0, "\n"); + + sub->read_open = 0; + + if (--(chan->read_open_refcount) == 0) { + /* XXX don't stop the read transfer here, + * hence that causes problems with some + * MIDI adapters + */ + DPRINTF(0, "(stopping read transfer)\n"); + } + return; +} + +static void +umidi_start_write(struct usb_cdev *cdev) +{ + struct umidi_chan *chan = cdev->sc_priv_ptr; + usbd_transfer_start(chan->xfer[0]); + return; +} + +static void +umidi_stop_write(struct usb_cdev *cdev) +{ + struct umidi_chan *chan = cdev->sc_priv_ptr; + struct umidi_sub_chan *sub = umidi_sub_by_cdev(cdev); + + DPRINTF(0, "\n"); + + sub->write_open = 0; + + if (--(chan->write_open_refcount) == 0) { + DPRINTF(0, "(stopping write transfer)\n"); + usbd_transfer_stop(chan->xfer[2]); + usbd_transfer_stop(chan->xfer[0]); + } + return; +} + +static int32_t +umidi_open(struct usb_cdev *cdev, int32_t fflags, + int32_t devtype, struct thread *td) +{ + struct umidi_chan *chan = cdev->sc_priv_ptr; + struct umidi_sub_chan *sub = umidi_sub_by_cdev(cdev); + + if (fflags & FREAD) { + chan->read_open_refcount++; + sub->read_open = 1; + } + + if (fflags & FWRITE) { + /* clear stall first */ + chan->flags |= UMIDI_FLAG_WRITE_STALL; + chan->write_open_refcount++; + sub->write_open = 1; + + /* reset */ + sub->state = UMIDI_ST_UNKNOWN; + } + return 0; /* success */ +} + +static int32_t +umidi_ioctl(struct usb_cdev *cdev, u_long cmd, caddr_t data, + int32_t fflags, struct thread *td) +{ + return ENODEV; +} + +static void +umidi_init(device_t dev) +{ + struct uaudio_softc *sc = device_get_softc(dev); + struct umidi_chan *chan = &(sc->sc_midi_chan); + + mtx_init(&(chan->mtx), "umidi lock", NULL, MTX_DEF|MTX_RECURSE); + return; +} + +static int32_t +umidi_probe(device_t dev) +{ + struct uaudio_softc *sc = device_get_softc(dev); + struct usb_attach_arg *uaa = device_get_ivars(dev); + struct umidi_chan *chan = &(sc->sc_midi_chan); + struct umidi_sub_chan *sub; + const char * p_buf[3]; + int32_t unit = device_get_unit(dev); + int32_t error; + u_int32_t n; + u_int8_t buf[32]; + + if (usbreq_set_interface(sc->sc_udev, chan->iface_index, + chan->iface_alt_index)) { + DPRINTF(0, "setting of alternate index failed!\n"); + goto detach; + } + + USBD_SET_IFACE_NO_PROBE(sc->sc_udev, chan->iface_index); + + error = usbd_transfer_setup(uaa->device, chan->iface_index, + chan->xfer, umidi_config, UMIDI_N_TRANSFER, + chan, &(chan->mtx), &(chan->mem_wait)); + if (error) { + DPRINTF(0, "error=%s\n", usbd_errstr(error)) ; + goto detach; + } + + if ((chan->max_cable > UMIDI_CABLES_MAX) || + (chan->max_cable == 0)) { + chan->max_cable = UMIDI_CABLES_MAX; + } + + for (n = 0; n < chan->max_cable; n++) { + + sub = &(chan->sub[n]); + + snprintf(buf, sizeof(buf), "umidi" + "%d.%x", unit, n); + + p_buf[0] = buf; + p_buf[1] = NULL; + + sub->cdev.sc_start_read = &umidi_start_read; + sub->cdev.sc_start_write = &umidi_start_write; + sub->cdev.sc_stop_read = &umidi_stop_read; + sub->cdev.sc_stop_write = &umidi_stop_write; + sub->cdev.sc_open = &umidi_open; + sub->cdev.sc_ioctl = &umidi_ioctl; + sub->cdev.sc_flags |= (USB_CDEV_FLAG_WAKEUP_RD_IMMED| + USB_CDEV_FLAG_WAKEUP_WR_IMMED); + + error = usb_cdev_attach(&(sub->cdev), chan, &(chan->mtx), p_buf, + UID_ROOT, GID_OPERATOR, 0644, + 4, (1024/4), + 32, (1024/32)); + if (error) { + goto detach; + } + } + + mtx_lock(&(chan->mtx)); + + /* clear stall first */ + chan->flags |= UMIDI_FLAG_READ_STALL; + + /* + * NOTE: at least one device will not work properly unless + * the BULK pipe is open all the time. + */ + usbd_transfer_start(chan->xfer[1]); + + mtx_unlock(&(chan->mtx)); + + return 0; /* success */ + + detach: + return ENXIO; /* failure */ +} + +static int32_t +umidi_detach(device_t dev) +{ + struct uaudio_softc *sc = device_get_softc(dev); + struct umidi_chan *chan = &(sc->sc_midi_chan); + u_int32_t n; + + for (n = 0; n < UMIDI_CABLES_MAX; n++) { + usb_cdev_detach(&(chan->sub[n].cdev)); + } + + mtx_lock(&(chan->mtx)); + + if (chan->xfer[3]) { + usbd_transfer_stop(chan->xfer[3]); + } + if (chan->xfer[1]) { + usbd_transfer_stop(chan->xfer[1]); + } + + mtx_unlock(&(chan->mtx)); + + usbd_transfer_unsetup(chan->xfer, UMIDI_N_TRANSFER); + + usbd_transfer_drain(&(chan->mem_wait), &(chan->mtx)); + + mtx_destroy(&(chan->mtx)); + + return 0; +} + DRIVER_MODULE(uaudio, uhub, uaudio_driver, uaudio_devclass, usbd_driver_load, 0); MODULE_DEPEND(uaudio, usb, 1, 1, 1); MODULE_VERSION(uaudio, 1); From owner-p4-projects@FreeBSD.ORG Sun Aug 20 09:08:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4096216A4F5; Sun, 20 Aug 2006 09:08:51 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1886916A4F2 for ; Sun, 20 Aug 2006 09:08:51 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C623643D5C for ; Sun, 20 Aug 2006 09:08:50 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7K98oou092534 for ; Sun, 20 Aug 2006 09:08:50 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7K98otF092531 for perforce@freebsd.org; Sun, 20 Aug 2006 09:08:50 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sun, 20 Aug 2006 09:08:50 GMT Message-Id: <200608200908.k7K98otF092531@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 104585 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Aug 2006 09:08:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=104585 Change 104585 by rdivacky@rdivacky_witten on 2006/08/20 09:08:45 MI parts of amd64 linuxoaltor. Not working yet. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_machdep.c#9 edit .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_misc.c#24 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_machdep.c#9 (text+ko) ==== @@ -60,6 +60,7 @@ #include #include #include +#include struct l_old_select_argv { l_int nfds; @@ -211,6 +212,14 @@ free(path, M_TEMP); if (error == 0) error = kern_execve(td, &eargs, NULL); + if (error == 0) + /* linux process can exec fbsd one, dont attempt + * to create emuldata for such process using + * linux_proc_init, this leads to a panic on KASSERT + * because such process has p->p_emuldata == NULL + */ + if (td->td_proc->p_sysent == &elf_linux_sysvec) + error = linux_proc_init(td, 0, 0); return (error); } @@ -452,6 +461,10 @@ if (td->td_retval[1] == 1) td->td_retval[0] = 0; + error = linux_proc_init(td, td->td_retval[0], 0); + if (error) + return (error); + return (0); } @@ -470,6 +483,9 @@ /* Are we the child? */ if (td->td_retval[1] == 1) td->td_retval[0] = 0; + error = linux_proc_init(td, td->td_retval[0], 0); + if (error) + return (error); return (0); } @@ -480,12 +496,14 @@ struct proc *p2; struct thread *td2; int exit_signal; + struct linux_emuldata *em; #ifdef DEBUG if (ldebug(clone)) { - printf(ARGS(clone, "flags %x, stack %x"), - (unsigned int)(uintptr_t)args->flags, - (unsigned int)(uintptr_t)args->stack); + printf(ARGS(clone, "flags %x, stack %x, parent tid: %x, child tid: %x"), + (unsigned int)args->flags, (unsigned int)(uintptr_t)args->stack, + (unsigned int)(uintptr_t)args->parent_tidptr, + (unsigned int)(uintptr_t)args->child_tidptr); } #endif @@ -503,11 +521,75 @@ if (!(args->flags & CLONE_FILES)) ff |= RFFDG; + /* + * Attempt to detect when linux_clone(2) is used for creating + * kernel threads. Unfortunately despite the existence of the + * CLONE_THREAD flag, version of linuxthreads package used in + * most popular distros as of beginning of 2005 doesn't make + * any use of it. Therefore, this detection relay fully on + * empirical observation that linuxthreads sets certain + * combination of flags, so that we can make more or less + * precise detection and notify the FreeBSD kernel that several + * processes are in fact part of the same threading group, so + * that special treatment is necessary for signal delivery + * between those processes and fd locking. + */ + if ((args->flags & 0xffffff00) == THREADING_FLAGS) + ff |= RFTHREAD; + error = fork1(td, ff, 0, &p2); if (error) return (error); + /* create the emuldata */ + error = linux_proc_init(td, p2->p_pid, args->flags); + /* reference it - no need to check this */ + em = em_find(p2, EMUL_UNLOCKED); + KASSERT(em != NULL, ("clone: emuldata not found.\n")); + /* and adjust it */ + if (args->flags & CLONE_PARENT_SETTID) { + if (args->parent_tidptr == NULL) { + EMUL_UNLOCK(&emul_lock); + return (EINVAL); + } + error = copyout(&p2->p_pid, args->parent_tidptr, sizeof(p2->p_pid)); + if (error) { + EMUL_UNLOCK(&emul_lock); + return (error); + } + } + + if (args->flags & CLONE_PARENT) { +#ifdef DEBUG + printf("linux_clone: CLONE_PARENT\n"); +#endif + } + + if (args->flags & CLONE_THREAD) { + /* XXX: linux mangles pgrp and pptr somehow + * I think it might be this but I am not sure. + */ +#ifdef notyet + p2->p_pgrp = td->td_proc->p_pgrp; + p2->p_pptr = td->td_proc->p_pptr; +#endif + exit_signal = 0; +#ifdef DEBUG + printf("linux_clone: CLONE_THREADS\n"); +#endif + } + if (args->flags & CLONE_CHILD_SETTID) + em->child_set_tid = args->child_tidptr; + else + em->child_set_tid = NULL; + + if (args->flags & CLONE_CHILD_CLEARTID) + em->child_clear_tid = args->child_tidptr; + else + em->child_clear_tid = NULL; + EMUL_UNLOCK(&emul_lock); + PROC_LOCK(p2); p2->p_sigparent = exit_signal; PROC_UNLOCK(p2); @@ -519,6 +601,10 @@ if (args->stack) td2->td_frame->tf_rsp = PTROUT(args->stack); + if (args->flags & CLONE_SETTLS) { + /* XXX: todo */ + } + #ifdef DEBUG if (ldebug(clone)) printf(LMSG("clone: successful rfork to %ld, stack %p sig = %d"), ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_misc.c#24 (text+ko) ==== @@ -1331,7 +1331,6 @@ int linux_getpid(struct thread *td, struct linux_getpid_args *args) { -#ifdef __i386__ struct linux_emuldata *em; char osrel[LINUX_MAX_UTSNAME]; @@ -1346,11 +1345,7 @@ td->td_retval[0] = td->td_proc->p_pid; PROC_UNLOCK(td->td_proc); } -#else - PROC_LOCK(td->td_proc); - td->td_retval[0] = td->td_proc->p_pid; - PROC_UNLOCK(td->td_proc); -#endif + return (0); } @@ -1370,7 +1365,6 @@ int linux_getppid(struct thread *td, struct linux_getppid_args *args) { -#ifdef __i386__ struct linux_emuldata *em; struct proc *p, *pp; char osrel[LINUX_MAX_UTSNAME]; @@ -1412,9 +1406,6 @@ EMUL_UNLOCK(&emul_lock); PROC_UNLOCK(pp); -#else - return getppid(td, (struct getppid_args *) args); -#endif return (0); } @@ -1481,7 +1472,6 @@ int linux_exit_group(struct thread *td, struct linux_exit_group_args *args) { -#ifdef __i386__ struct linux_emuldata *em, *td_em, *tmp_em; struct proc *sp; char osrel[LINUX_MAX_UTSNAME]; @@ -1513,10 +1503,8 @@ EMUL_SHARED_RUNLOCK(&emul_shared_lock); EMUL_UNLOCK(&emul_lock); } -#endif exit1(td, W_EXITCODE(args->error_code,0)); return (0); } - From owner-p4-projects@FreeBSD.ORG Sun Aug 20 16:49:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DF9C216A4E8; Sun, 20 Aug 2006 16:49:33 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B0DE616A4DE for ; Sun, 20 Aug 2006 16:49:33 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6D25143D5D for ; Sun, 20 Aug 2006 16:49:33 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7KGnXCM048995 for ; Sun, 20 Aug 2006 16:49:33 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7KGnXhV048992 for perforce@freebsd.org; Sun, 20 Aug 2006 16:49:33 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sun, 20 Aug 2006 16:49:33 GMT Message-Id: <200608201649.k7KGnXhV048992@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 104600 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Aug 2006 16:49:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=104600 Change 104600 by rdivacky@rdivacky_witten on 2006/08/20 16:49:25 Add set_thread_area. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/syscalls.master#15 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/syscalls.master#15 (text+ko) ==== @@ -404,7 +404,7 @@ struct l_timespec *timeout, void *uaddr2, int val3); } 241 AUE_NULL UNIMPL linux_sched_setaffinity 242 AUE_NULL UNIMPL linux_sched_getaffinity -243 AUE_NULL UNIMPL linux_set_thread_area +243 AUE_NULL STD { int linux_set_thread_area(struct l_user_desc *desc); } 244 AUE_NULL UNIMPL linux_get_thread_area 245 AUE_NULL UNIMPL linux_io_setup 246 AUE_NULL UNIMPL linux_io_destroy From owner-p4-projects@FreeBSD.ORG Sun Aug 20 16:50:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B35F816A4DE; Sun, 20 Aug 2006 16:50:35 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 79AD416A4DA for ; Sun, 20 Aug 2006 16:50:35 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3E77D43D49 for ; Sun, 20 Aug 2006 16:50:35 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7KGoZbq049099 for ; Sun, 20 Aug 2006 16:50:35 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7KGoYQE049096 for perforce@freebsd.org; Sun, 20 Aug 2006 16:50:34 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sun, 20 Aug 2006 16:50:34 GMT Message-Id: <200608201650.k7KGoYQE049096@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 104601 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Aug 2006 16:50:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=104601 Change 104601 by rdivacky@rdivacky_witten on 2006/08/20 16:49:46 Regen after syscalls.master update. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_proto.h#14 edit .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_syscall.h#14 edit .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_sysent.c#14 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_proto.h#14 (text+ko) ==== @@ -2,7 +2,7 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.21 2006/08/15 17:36:58 jhb Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.19 2006/08/15 12:28:14 netchild Exp */ @@ -724,6 +724,9 @@ char uaddr2_l_[PADL_(void *)]; void * uaddr2; char uaddr2_r_[PADR_(void *)]; char val3_l_[PADL_(int)]; int val3; char val3_r_[PADR_(int)]; }; +struct linux_set_thread_area_args { + char desc_l_[PADL_(struct l_user_desc *)]; struct l_user_desc * desc; char desc_r_[PADR_(struct l_user_desc *)]; +}; struct linux_fadvise64_args { register_t dummy; }; @@ -1080,6 +1083,7 @@ int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_tkill(struct thread *, struct linux_tkill_args *); int linux_sys_futex(struct thread *, struct linux_sys_futex_args *); +int linux_set_thread_area(struct thread *, struct linux_set_thread_area_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); int linux_exit_group(struct thread *, struct linux_exit_group_args *); int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); @@ -1325,6 +1329,7 @@ #define LINUX_SYS_AUE_linux_fremovexattr AUE_NULL #define LINUX_SYS_AUE_linux_tkill AUE_NULL #define LINUX_SYS_AUE_linux_sys_futex AUE_NULL +#define LINUX_SYS_AUE_linux_set_thread_area AUE_NULL #define LINUX_SYS_AUE_linux_fadvise64 AUE_NULL #define LINUX_SYS_AUE_linux_exit_group AUE_EXIT #define LINUX_SYS_AUE_linux_lookup_dcookie AUE_NULL ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_syscall.h#14 (text+ko) ==== @@ -2,7 +2,7 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.21 2006/08/15 17:36:58 jhb Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.19 2006/08/15 12:28:14 netchild Exp */ @@ -221,6 +221,7 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_tkill 238 #define LINUX_SYS_linux_sys_futex 240 +#define LINUX_SYS_linux_set_thread_area 243 #define LINUX_SYS_linux_fadvise64 250 #define LINUX_SYS_linux_exit_group 252 #define LINUX_SYS_linux_lookup_dcookie 253 ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_sysent.c#14 (text+ko) ==== @@ -2,7 +2,7 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.21 2006/08/15 17:36:58 jhb Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.19 2006/08/15 12:28:14 netchild Exp */ @@ -263,7 +263,7 @@ { AS(linux_sys_futex_args), (sy_call_t *)linux_sys_futex, AUE_NULL, NULL, 0, 0 }, /* 240 = linux_sys_futex */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 241 = linux_sched_setaffinity */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 242 = linux_sched_getaffinity */ - { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 243 = linux_set_thread_area */ + { AS(linux_set_thread_area_args), (sy_call_t *)linux_set_thread_area, AUE_NULL, NULL, 0, 0 }, /* 243 = linux_set_thread_area */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 244 = linux_get_thread_area */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 245 = linux_io_setup */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 246 = linux_io_destroy */ From owner-p4-projects@FreeBSD.ORG Sun Aug 20 23:08:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EA63E16A4E0; Sun, 20 Aug 2006 23:07:59 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A9F1016A4DA for ; Sun, 20 Aug 2006 23:07:59 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 02D5B43D60 for ; Sun, 20 Aug 2006 23:07:55 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7KN7tSM085818 for ; Sun, 20 Aug 2006 23:07:55 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7KN7r1m085815 for perforce@freebsd.org; Sun, 20 Aug 2006 23:07:53 GMT (envelope-from imp@freebsd.org) Date: Sun, 20 Aug 2006 23:07:53 GMT Message-Id: <200608202307.k7KN7r1m085815@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104630 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Aug 2006 23:08:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=104630 Change 104630 by imp@imp_paco-paco on 2006/08/20 23:07:23 IFC @104629 Affected files ... .. //depot/projects/arm/src/UPDATING#3 integrate .. //depot/projects/arm/src/bin/date/netdate.c#2 integrate .. //depot/projects/arm/src/bin/df/df.c#2 integrate .. //depot/projects/arm/src/bin/ed/main.c#2 integrate .. //depot/projects/arm/src/bin/ps/ps.1#2 integrate .. //depot/projects/arm/src/contrib/less/LICENSE#2 integrate .. //depot/projects/arm/src/contrib/less/Makefile.aut#2 integrate .. //depot/projects/arm/src/contrib/less/Makefile.in#2 integrate .. //depot/projects/arm/src/contrib/less/Makefile.wnb#2 integrate .. //depot/projects/arm/src/contrib/less/NEWS#2 integrate .. //depot/projects/arm/src/contrib/less/README#2 integrate .. //depot/projects/arm/src/contrib/less/brac.c#2 integrate .. //depot/projects/arm/src/contrib/less/ch.c#2 integrate .. //depot/projects/arm/src/contrib/less/charset.c#2 integrate .. //depot/projects/arm/src/contrib/less/charset.h#1 branch .. //depot/projects/arm/src/contrib/less/cmd.h#2 integrate .. //depot/projects/arm/src/contrib/less/cmdbuf.c#2 integrate .. //depot/projects/arm/src/contrib/less/command.c#2 integrate .. //depot/projects/arm/src/contrib/less/configure#2 integrate .. //depot/projects/arm/src/contrib/less/configure.ac#2 integrate .. //depot/projects/arm/src/contrib/less/decode.c#2 integrate .. //depot/projects/arm/src/contrib/less/defines.ds#2 integrate .. //depot/projects/arm/src/contrib/less/defines.h.in#2 integrate .. //depot/projects/arm/src/contrib/less/defines.o2#2 integrate .. //depot/projects/arm/src/contrib/less/defines.o9#2 integrate .. //depot/projects/arm/src/contrib/less/defines.wn#2 integrate .. //depot/projects/arm/src/contrib/less/edit.c#2 integrate .. //depot/projects/arm/src/contrib/less/filename.c#2 integrate .. //depot/projects/arm/src/contrib/less/forwback.c#2 integrate .. //depot/projects/arm/src/contrib/less/funcs.h#2 integrate .. //depot/projects/arm/src/contrib/less/ifile.c#2 integrate .. //depot/projects/arm/src/contrib/less/input.c#2 integrate .. //depot/projects/arm/src/contrib/less/jump.c#2 integrate .. //depot/projects/arm/src/contrib/less/less.h#2 integrate .. //depot/projects/arm/src/contrib/less/less.man#2 integrate .. //depot/projects/arm/src/contrib/less/less.nro#2 integrate .. //depot/projects/arm/src/contrib/less/lessecho.c#2 integrate .. //depot/projects/arm/src/contrib/less/lessecho.man#1 branch .. //depot/projects/arm/src/contrib/less/lessecho.nro#1 branch .. //depot/projects/arm/src/contrib/less/lesskey.c#2 integrate .. //depot/projects/arm/src/contrib/less/lesskey.h#2 integrate .. //depot/projects/arm/src/contrib/less/lesskey.man#2 integrate .. //depot/projects/arm/src/contrib/less/lesskey.nro#2 integrate .. //depot/projects/arm/src/contrib/less/lglob.h#2 integrate .. //depot/projects/arm/src/contrib/less/line.c#2 integrate .. //depot/projects/arm/src/contrib/less/linenum.c#2 integrate .. //depot/projects/arm/src/contrib/less/lsystem.c#2 integrate .. //depot/projects/arm/src/contrib/less/main.c#2 integrate .. //depot/projects/arm/src/contrib/less/mark.c#2 integrate .. //depot/projects/arm/src/contrib/less/mkhelp.c#2 integrate .. //depot/projects/arm/src/contrib/less/optfunc.c#2 integrate .. //depot/projects/arm/src/contrib/less/option.c#2 integrate .. //depot/projects/arm/src/contrib/less/option.h#2 integrate .. //depot/projects/arm/src/contrib/less/opttbl.c#2 integrate .. //depot/projects/arm/src/contrib/less/os.c#2 integrate .. //depot/projects/arm/src/contrib/less/output.c#2 integrate .. //depot/projects/arm/src/contrib/less/pckeys.h#2 integrate .. //depot/projects/arm/src/contrib/less/position.c#2 integrate .. //depot/projects/arm/src/contrib/less/position.h#2 integrate .. //depot/projects/arm/src/contrib/less/prompt.c#2 integrate .. //depot/projects/arm/src/contrib/less/screen.c#2 integrate .. //depot/projects/arm/src/contrib/less/scrsize.c#2 integrate .. //depot/projects/arm/src/contrib/less/search.c#2 integrate .. //depot/projects/arm/src/contrib/less/signal.c#2 integrate .. //depot/projects/arm/src/contrib/less/tags.c#2 integrate .. //depot/projects/arm/src/contrib/less/ttyin.c#2 integrate .. //depot/projects/arm/src/contrib/less/version.c#2 integrate .. //depot/projects/arm/src/contrib/sendmail/FREEBSD-upgrade#2 integrate .. //depot/projects/arm/src/contrib/sendmail/RELEASE_NOTES#2 integrate .. //depot/projects/arm/src/contrib/sendmail/cf/cf/submit.cf#2 integrate .. //depot/projects/arm/src/contrib/sendmail/cf/m4/version.m4#2 integrate .. //depot/projects/arm/src/contrib/sendmail/contrib/cidrexpand#2 integrate .. //depot/projects/arm/src/contrib/sendmail/src/main.c#2 integrate .. //depot/projects/arm/src/contrib/sendmail/src/queue.c#2 integrate .. //depot/projects/arm/src/contrib/sendmail/src/srvrsmtp.c#2 integrate .. //depot/projects/arm/src/contrib/sendmail/src/version.c#2 integrate .. //depot/projects/arm/src/etc/defaults/rc.conf#4 integrate .. //depot/projects/arm/src/etc/network.subr#2 integrate .. //depot/projects/arm/src/etc/pccard_ether#2 integrate .. //depot/projects/arm/src/etc/rc.d/dhclient#2 integrate .. //depot/projects/arm/src/etc/rc.subr#3 integrate .. //depot/projects/arm/src/etc/sendmail/freebsd.mc#2 integrate .. //depot/projects/arm/src/etc/sendmail/freebsd.submit.mc#2 integrate .. //depot/projects/arm/src/gnu/lib/libsupc++/Makefile#2 integrate .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#5 integrate .. //depot/projects/arm/src/sbin/dhclient/dhclient.8#2 integrate .. //depot/projects/arm/src/sbin/dhclient/dhclient.c#2 integrate .. //depot/projects/arm/src/sbin/ipf/libipf/Makefile#3 integrate .. //depot/projects/arm/src/sbin/ipfw/ipfw.8#3 integrate .. //depot/projects/arm/src/sbin/ipfw/ipfw2.c#3 integrate .. //depot/projects/arm/src/share/man/man4/amdsmb.4#2 integrate .. //depot/projects/arm/src/share/man/man4/ixgb.4#2 integrate .. //depot/projects/arm/src/share/man/man4/nfsmb.4#2 integrate .. //depot/projects/arm/src/share/man/man4/uplcom.4#2 integrate .. //depot/projects/arm/src/share/man/man5/rc.conf.5#2 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux.h#4 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_machdep.c#6 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_sysvec.c#9 integrate .. //depot/projects/arm/src/sys/boot/arm/Makefile#2 integrate .. //depot/projects/arm/src/sys/boot/arm/at91/boot0/Makefile#9 integrate .. //depot/projects/arm/src/sys/boot/common/help.common#3 integrate .. //depot/projects/arm/src/sys/boot/common/loader.8#4 integrate .. //depot/projects/arm/src/sys/boot/ficl/arm/sysdep.c#1 branch .. //depot/projects/arm/src/sys/boot/ficl/arm/sysdep.h#1 branch .. //depot/projects/arm/src/sys/boot/forth/loader.conf#8 integrate .. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_emul.c#2 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_emul.h#2 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_futex.c#2 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_misc.c#11 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_signal.c#6 integrate .. //depot/projects/arm/src/sys/compat/ndis/ntoskrnl_var.h#4 integrate .. //depot/projects/arm/src/sys/conf/NOTES#30 integrate .. //depot/projects/arm/src/sys/conf/files.pc98#9 integrate .. //depot/projects/arm/src/sys/conf/options#29 integrate .. //depot/projects/arm/src/sys/dev/arl/if_arlreg.h#3 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-chipset.c#24 integrate .. //depot/projects/arm/src/sys/dev/ath/if_athvar.h#11 integrate .. //depot/projects/arm/src/sys/dev/bge/if_bge.c#19 integrate .. //depot/projects/arm/src/sys/dev/ips/ips.h#4 integrate .. //depot/projects/arm/src/sys/dev/usb/usb_port.h#6 integrate .. //depot/projects/arm/src/sys/fs/msdosfs/denode.h#4 integrate .. //depot/projects/arm/src/sys/geom/vinum/geom_vinum_raid5.h#2 integrate .. //depot/projects/arm/src/sys/i386/linux/linux.h#5 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_machdep.c#6 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_sysvec.c#9 integrate .. //depot/projects/arm/src/sys/kern/sys_process.c#7 integrate .. //depot/projects/arm/src/sys/kern/uipc_socket.c#21 integrate .. //depot/projects/arm/src/sys/modules/Makefile#28 integrate .. //depot/projects/arm/src/sys/net/if_bridge.c#21 integrate .. //depot/projects/arm/src/sys/netinet/ip_fastfwd.c#7 integrate .. //depot/projects/arm/src/sys/netinet/ip_fw.h#8 integrate .. //depot/projects/arm/src/sys/netinet/ip_fw2.c#17 integrate .. //depot/projects/arm/src/sys/netinet/ip_input.c#12 integrate .. //depot/projects/arm/src/sys/netinet/ip_output.c#12 integrate .. //depot/projects/arm/src/sys/pci/nfsmb.c#3 integrate .. //depot/projects/arm/src/sys/ufs/ufs/ufs_vnops.c#7 integrate .. //depot/projects/arm/src/usr.bin/calendar/calendars/calendar.freebsd#2 integrate .. //depot/projects/arm/src/usr.bin/less/defines.h#2 integrate .. //depot/projects/arm/src/usr.bin/lessecho/Makefile#2 integrate .. //depot/projects/arm/src/usr.bin/locate/locate/locate.1#2 integrate .. //depot/projects/arm/src/usr.bin/pkill/Makefile#2 integrate .. //depot/projects/arm/src/usr.sbin/arp/arp.8#2 integrate .. //depot/projects/arm/src/usr.sbin/newsyslog/newsyslog.c#2 integrate .. //depot/projects/arm/src/usr.sbin/rpc.lockd/kern.c#3 integrate Differences ... ==== //depot/projects/arm/src/UPDATING#3 (text+ko) ==== @@ -21,6 +21,11 @@ developers choose to disable these features on build machines to maximize performance. +20060816: + The IPFIREWALL_FORWARD_EXTENDED option is gone and the behaviour + for IP_FIREWALL_FORWARD is now as it was before when it was first + committed and for years after. The behaviour is now ON. + 20060725: enigma(1)/crypt(1) utility has been changed on 64 bit architectures. Now it can decrypt files created from different architectures. @@ -598,4 +603,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.452 2006/07/26 16:31:10 jkim Exp $ +$FreeBSD: src/UPDATING,v 1.453 2006/08/17 00:41:05 julian Exp $ ==== //depot/projects/arm/src/bin/date/netdate.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ #endif #include -__FBSDID("$FreeBSD: src/bin/date/netdate.c,v 1.18 2004/04/06 20:06:45 markm Exp $"); +__FBSDID("$FreeBSD: src/bin/date/netdate.c,v 1.19 2006/08/20 06:31:24 imp Exp $"); #include #include @@ -108,14 +108,14 @@ warnx("all ports in use"); goto bad; } + memset(&msg, 0, sizeof(msg)); msg.tsp_type = TSP_SETDATE; msg.tsp_vers = TSPVERSION; if (gethostname(hostname, sizeof(hostname))) { warn("gethostname"); goto bad; } - (void)strncpy(msg.tsp_name, hostname, sizeof(msg.tsp_name) - 1); - msg.tsp_name[sizeof(msg.tsp_name) - 1] = '\0'; + (void)strlcpy(msg.tsp_name, hostname, sizeof(msg.tsp_name)); msg.tsp_seq = htons((u_short)0); msg.tsp_time.tv_sec = htonl((u_long)tval); msg.tsp_time.tv_usec = htonl((u_long)0); ==== //depot/projects/arm/src/bin/df/df.c#2 (text+ko) ==== @@ -44,7 +44,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.64 2005/01/10 08:39:21 imp Exp $"); +__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.65 2006/08/20 06:32:40 imp Exp $"); #include #include @@ -113,7 +113,7 @@ memset(&totalbuf, 0, sizeof(totalbuf)); totalbuf.f_bsize = DEV_BSIZE; - strncpy(totalbuf.f_mntfromname, "total", MNAMELEN); + strlcpy(totalbuf.f_mntfromname, "total", MNAMELEN); vfslist = NULL; while ((ch = getopt(argc, argv, "abcgHhiklmnPt:")) != -1) switch (ch) { @@ -552,7 +552,7 @@ *str = 'n'; *(str + 1) = 'o'; for (i = 0, strptr = str + 2; i < cnt; i++, strptr++) { - strncpy(strptr, listptr[i], 32); + strlcpy(strptr, listptr[i], 32); strptr += strlen(listptr[i]); *strptr = ','; free(listptr[i]); ==== //depot/projects/arm/src/bin/ed/main.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/ed/main.c,v 1.28 2005/02/09 17:37:37 ru Exp $"); +__FBSDID("$FreeBSD: src/bin/ed/main.c,v 1.29 2006/08/17 23:00:33 imp Exp $"); /* * CREDITS @@ -292,7 +292,7 @@ errmsg = "invalid address"; \ return ERR; \ } \ -} while (0); +} while (0) /* next_addr: return the next line address in the command buffer */ long ==== //depot/projects/arm/src/bin/ps/ps.1#2 (text+ko) ==== @@ -27,9 +27,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 -.\" $FreeBSD: src/bin/ps/ps.1,v 1.86 2005/04/29 11:10:27 maxim Exp $ +.\" $FreeBSD: src/bin/ps/ps.1,v 1.87 2006/08/18 14:12:38 yar Exp $ .\" -.Dd March 20, 2005 +.Dd August 18, 2006 .Dt PS 1 .Os .Sh NAME @@ -179,14 +179,15 @@ .It Fl o Display information associated with the space or comma separated list of keywords specified. +The last keyword in the list may be appended with an equals +.Pq Ql = +sign and a string spanning the rest of the argument. +This causes the printed header to use the specified string instead of +the standard header. Multiple keywords may also be given in the form of more than one .Fl o option. -Keywords may be appended with an equals -.Pq Ql = -sign and a string. -This causes the printed header to use the specified string instead of -the standard header. +So the header texts for multiple keywords can be changed. If all keywords have empty header texts, no header line is written. .It Fl p Display information about processes which match the specified process IDs. ==== //depot/projects/arm/src/contrib/less/LICENSE#2 (text+ko) ==== @@ -2,7 +2,7 @@ ------------ Less -Copyright (C) 1984-2002 Mark Nudelman +Copyright (C) 1984-2005 Mark Nudelman Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions ==== //depot/projects/arm/src/contrib/less/Makefile.aut#2 (text+ko) ==== @@ -24,9 +24,10 @@ ${SRC} regexp.c regexp.h \ COPYING INSTALL LICENSE Makefile.in Makefile.aut NEWS README \ configure configure.ac lesskey.c lessecho.c scrsize.c \ - cmd.h funcs.h lglob.h less.h lesskey.h option.h pckeys.h position.h \ + charset.h cmd.h funcs.h lglob.h less.h lesskey.h option.h pckeys.h position.h \ install.sh defines.h.in mkinstalldirs \ - less.nro lesskey.nro less.man lesskey.man less.hlp \ + less.nro less.man lesskey.nro lesskey.man lessecho.nro lessecho.man \ + less.hlp \ mkfuncs.awk mkhelp.c \ ${DISTFILES_W} @@ -55,7 +56,8 @@ clean: rm -f Makefile config.status config.log config.cache defines.h stamp-h \ - README NEWS less.nro lesskey.nro less.man lesskey.man + README NEWS \ + less.nro less.man lesskey.nro lesskey.man lessecho.nro lessecho.man distclean: clean realclean: clean @@ -78,6 +80,8 @@ ${REPLACE_VERSION} ${srcdir}/less.nro.VER ${srcdir}/lesskey.nro: ${srcdir}/lesskey.nro.VER ${srcdir}/version.c ${REPLACE_VERSION} ${srcdir}/lesskey.nro.VER +${srcdir}/lessecho.nro: ${srcdir}/lessecho.nro.VER ${srcdir}/version.c + ${REPLACE_VERSION} ${srcdir}/lessecho.nro.VER ${srcdir}/less.hlp: ${srcdir}/less.hlp.VER ${srcdir}/version.c ${REPLACE_VERSION} ${srcdir}/less.hlp.VER @@ -85,6 +89,8 @@ ${NROFF} ${srcdir}/less.nro >${srcdir}/less.man ${srcdir}/lesskey.man: ${srcdir}/lesskey.nro ${NROFF} ${srcdir}/lesskey.nro >${srcdir}/lesskey.man +${srcdir}/lessecho.man: ${srcdir}/lessecho.nro + ${NROFF} ${srcdir}/lessecho.nro >${srcdir}/lessecho.man distfiles: ${DISTFILES} ==== //depot/projects/arm/src/contrib/less/Makefile.in#2 (text+ko) ==== @@ -59,12 +59,13 @@ ${OBJ}: ${srcdir}/less.h ${srcdir}/funcs.h defines.h -install: all ${srcdir}/less.nro ${srcdir}/lesskey.nro installdirs +install: all ${srcdir}/less.nro ${srcdir}/lesskey.nro ${srcdir}/lessecho.nro installdirs ${INSTALL_PROGRAM} less ${bindir}/${binprefix}less ${INSTALL_PROGRAM} lesskey ${bindir}/${binprefix}lesskey ${INSTALL_PROGRAM} lessecho ${bindir}/${binprefix}lessecho ${INSTALL_DATA} ${srcdir}/less.nro ${mandir}/man${manext}/${manprefix}less.${manext} ${INSTALL_DATA} ${srcdir}/lesskey.nro ${mandir}/man${manext}/${manprefix}lesskey.${manext} + ${INSTALL_DATA} ${srcdir}/lessecho.nro ${mandir}/man${manext}/${manprefix}lessecho.${manext} install-strip: ${MAKE} INSTALL_PROGRAM='${INSTALL_PROGRAM} -s' install ==== //depot/projects/arm/src/contrib/less/Makefile.wnb#2 (text+ko) ==== @@ -1,20 +1,27 @@ # Makefile for less. # Windows version +# Bolarnd C++ 5.5.1 free command line tools #### Start of system configuration section. #### +# +# Borland's make knows its own location in the +# filesystem. +# CC = bcc32 -LIBDIR = d:\bc45\lib +LIBDIR = $(MAKEDIR)\..\lib CFLAGS = -O2 -w-pro -TWC -P-c -v- -d -f- -ff- -vi -LDFLAGS = /Tpe /v- /ap /c /x -LD = tlink32 +LDFLAGS = -Tpe -v- -ap -c -x -V4.0 -GF:AGGRESSIVE +LD = ilink32 LIBS = ${LIBDIR}\import32.lib ${LIBDIR}\cw32.lib #### End of system configuration section. #### +# # This rule allows us to supply the necessary -D options # in addition to whatever the user asks for. +# .c.obj: ${CC} -c -I. ${CPPFLAGS} ${CFLAGS} $< @@ -25,16 +32,20 @@ position.obj prompt.obj search.obj signal.obj tags.obj \ ttyin.obj version.obj regexp.obj -all: less lesskey +all: less lesskey lessecho +# # This is really horrible, but the command line is too long for # MS-DOS if we try to link ${OBJ}. +# less: ${OBJ} - -del lesskey.obj - ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj *.obj, $@,,${LIBS} + ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj $**, $@,,${LIBS} lesskey: lesskey.obj version.obj - ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj lesskey.obj version.obj, $@,,${LIBS} + ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj $**, $@,,${LIBS} + +lessecho: lessecho.obj version.obj + ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj $**, $@,,${LIBS} defines.h: defines.wn -del defines.h @@ -44,6 +55,16 @@ clean: -del *.obj + -del *.il? + -del *.tds + -del defines.h + +spotless: clean -del less.exe -del lesskey.exe + -del lessecho.exe + +realclean: spotless + +distclean: spotless ==== //depot/projects/arm/src/contrib/less/NEWS#2 (text+ko) ==== @@ -7,11 +7,66 @@ http://www.greenwoodsoftware.com/less You can also download the latest version of less from there. - To report bugs, suggestions or comments, send email to - bug-less@gnu.org or markn@greenwoodsoftware.com. + To report bugs, suggestions or comments, send email to bug-less@gnu.org. + +====================================================================== + + + Major changes between "less" versions 382 and 394 + +* Add history file to save search and shell command history between + invocations of less. + +* Improve behavior of history list for search and shell commands. + +* Add -K (or --quit-on-intr) option to make less exit immediately on ctrl-C. + +* Improve handling of UTF-8 files and commands, including better + line wrapping and handling double-width chars. + +* Added LESSUTFBINFMT environment variable to control display of + non-printable characters in a UTF-8 file. + +* Add --with-secure option to configure, to make it easier to + build a secure version of less. + +* Show search matches in the status column even if search highlights + are disabled via the -G option or the ESC-u command. + +* Improve performance when the file contains very long lines. + +* Add "windows" charset. + +* Add man page for lessecho. + +* Add support for erase2 character, treated same as erase. + +* Use ASCII lowercase/uppercase logic when operating on the command line. + +* Update makefile for Borland C++ 5.5.1. + +* Fix bug in calculating number of pages for %D prompt. + +* Fix bug in handling tag file error. + +* Fix obscure bug if input file is deleted while viewing help. + +* Fix bug handling filenames which include square brackets. + +* Fix possible buffer overflow in "global" tag search. + +* Fix possible buffer overflow in usage of LESSOPEN and LESSCLOSE. + +* Fix buffer overflow in reverse search. ====================================================================== + Major changes between "less" versions 381 and 382 + +* Removed some old copyrighted code. + This probably breaks OS/9 support. + +====================================================================== Major changes between "less" versions 378 and 381 ==== //depot/projects/arm/src/contrib/less/README#2 (text+ko) ==== @@ -1,7 +1,7 @@ - Less, version 381 + Less, version 394 - This is the distribution of less, version 381, released 17 Jan 2003. + This is the distribution of less, version 394, released 03 Dec 2005. This program is part of the GNU project (http://www.gnu.org). This program is free software. You may redistribute it and/or @@ -57,6 +57,10 @@ regcomp Use the V8-compatible regcomp. regcomp-local Use Henry Spencer's V8-compatible regcomp (source is supplied with less). + --with-secure + Builds a "secure" version of less, with some features disabled + to prevent users from viewing other files, accessing shell + commands, etc. 3. It is a good idea to look over the generated Makefile and defines.h and make sure they look ok. If you know of any peculiarities of @@ -67,9 +71,6 @@ -lncurses -lcurses -ltermcap -ltermlib If you wish, you may edit defines.h to remove some optional features. - If you wish to build a "secure" version of less (which disables all - features which might allow a user to do unintended things to the system - on which less is running), edit defines.h and define SECURE to 1. If you choose not to include some features in your version, you may wish to edit the manual page "less.nro" and the help page "less.hlp" to remove the descriptions of the features which you are removing. ==== //depot/projects/arm/src/contrib/less/brac.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * Copyright (C) 1984-2002 Mark Nudelman + * Copyright (C) 1984-2004 Mark Nudelman * * You may distribute under the terms of either the GNU General Public * License or the Less License, as specified in the README file. ==== //depot/projects/arm/src/contrib/less/ch.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * Copyright (C) 1984-2002 Mark Nudelman + * Copyright (C) 1984-2004 Mark Nudelman * * You may distribute under the terms of either the GNU General Public * License or the Less License, as specified in the README file. ==== //depot/projects/arm/src/contrib/less/charset.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * Copyright (C) 1984-2002 Mark Nudelman + * Copyright (C) 1984-2005 Mark Nudelman * * You may distribute under the terms of either the GNU General Public * License or the Less License, as specified in the README file. @@ -18,8 +18,11 @@ #if HAVE_LOCALE #include #include +#include #endif +#include "charset.h" + public int utf_mode = 0; /* @@ -31,23 +34,76 @@ int *p_flag; char *desc; } charsets[] = { - { "ascii", NULL, "8bcccbcc18b95.b" }, - { "dos", NULL, "8bcccbcc12bc5b223.b" }, - { "ebcdic", NULL, "5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b." }, - { "IBM-1047", NULL, "4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc191.b" }, - { "iso8859", NULL, "8bcccbcc18b95.33b." }, - { "koi8-r", NULL, "8bcccbcc18b95.b128." }, - { "next", NULL, "8bcccbcc18b95.bb125.bb" }, - { "utf-8", &utf_mode, "8bcccbcc18b." }, + { "ascii", NULL, "8bcccbcc18b95.b" }, + { "utf-8", &utf_mode, "8bcccbcc18b95.b126.bb" }, + { "iso8859", NULL, "8bcccbcc18b95.33b." }, + { "latin3", NULL, "8bcccbcc18b95.33b5.b8.b15.b4.b12.b18.b12.b." }, + { "arabic", NULL, "8bcccbcc18b95.33b.3b.7b2.13b.3b.b26.5b19.b" }, + { "greek", NULL, "8bcccbcc18b95.33b4.2b4.b3.b35.b44.b" }, + { "greek2005", NULL, "8bcccbcc18b95.33b14.b35.b44.b" }, + { "hebrew", NULL, "8bcccbcc18b95.33b.b29.32b28.2b2.b" }, + { "koi8-r", NULL, "8bcccbcc18b95.b." }, + { "KOI8-T", NULL, "8bcccbcc18b95.b8.b6.b8.b.b.5b7.3b4.b4.b3.b.b.3b." }, + { "georgianps", NULL, "8bcccbcc18b95.3b11.4b12.2b." }, + { "tcvn", NULL, "b..b...bcccbccbbb7.8b95.b48.5b." }, + { "TIS-620", NULL, "8bcccbcc18b95.b.4b.11b7.8b." }, + { "next", NULL, "8bcccbcc18b95.bb125.bb" }, + { "dos", NULL, "8bcccbcc12bc5b95.b." }, + { "windows-1251", NULL, "8bcccbcc12bc5b95.b24.b." }, + { "windows-1252", NULL, "8bcccbcc12bc5b95.b.b11.b.2b12.b." }, + { "windows-1255", NULL, "8bcccbcc12bc5b95.b.b8.b.5b9.b.4b." }, + { "ebcdic", NULL, "5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b." }, + { "IBM-1047", NULL, "4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc191.b" }, { NULL, NULL, NULL } }; +/* + * Support "locale charmap"/nl_langinfo(CODESET) values, as well as others. + */ struct cs_alias { char *name; char *oname; } cs_aliases[] = { - { "latin1", "iso8859" }, - { "latin9", "iso8859" }, + { "UTF-8", "utf-8" }, + { "ANSI_X3.4-1968", "ascii" }, + { "US-ASCII", "ascii" }, + { "latin1", "iso8859" }, + { "ISO-8859-1", "iso8859" }, + { "latin9", "iso8859" }, + { "ISO-8859-15", "iso8859" }, + { "latin2", "iso8859" }, + { "ISO-8859-2", "iso8859" }, + { "ISO-8859-3", "latin3" }, + { "latin4", "iso8859" }, + { "ISO-8859-4", "iso8859" }, + { "cyrillic", "iso8859" }, + { "ISO-8859-5", "iso8859" }, + { "ISO-8859-6", "arabic" }, + { "ISO-8859-7", "greek" }, + { "IBM9005", "greek2005" }, + { "ISO-8859-8", "hebrew" }, + { "latin5", "iso8859" }, + { "ISO-8859-9", "iso8859" }, + { "latin6", "iso8859" }, + { "ISO-8859-10", "iso8859" }, + { "latin7", "iso8859" }, + { "ISO-8859-13", "iso8859" }, + { "latin8", "iso8859" }, + { "ISO-8859-14", "iso8859" }, + { "latin10", "iso8859" }, + { "ISO-8859-16", "iso8859" }, + { "IBM437", "dos" }, + { "EBCDIC-US", "ebcdic" }, + { "IBM1047", "IBM-1047" }, + { "KOI8-R", "koi8-r" }, + { "KOI8-U", "koi8-r" }, + { "GEORGIAN-PS", "georgianps" }, + { "TCVN5712-1", "tcvn" }, + { "NEXTSTEP", "next" }, + { "windows", "windows-1252" }, /* backward compatibility */ + { "CP1251", "windows-1251" }, + { "CP1252", "windows-1252" }, + { "CP1255", "windows-1255" }, { NULL, NULL } }; @@ -56,6 +112,7 @@ static char chardef[256]; static char *binfmt = NULL; +static char *utfbinfmt = NULL; public int binattr = AT_STANDOUT; @@ -131,8 +188,9 @@ * The valid charset names are listed in the "charsets" array. */ static int -icharset(name) +icharset(name, no_error) register char *name; + int no_error; { register struct charset *p; register struct cs_alias *a; @@ -161,9 +219,10 @@ } } - error("invalid charset name", NULL_PARG); - quit(QUIT_ERROR); - /*NOTREACHED*/ + if (!no_error) { + error("invalid charset name", NULL_PARG); + quit(QUIT_ERROR); + } return (0); } @@ -176,7 +235,6 @@ { register int c; - setlocale(LC_ALL, ""); for (c = 0; c < (int) sizeof(chardef); c++) { if (isprint(c)) @@ -190,17 +248,39 @@ #endif /* - * Define the printing format for control chars. + * Define the printing format for control (or binary utf) chars. */ - public void -setbinfmt(s) + static void +setbinfmt(s, fmtvarptr, default_fmt) char *s; + char **fmtvarptr; + char *default_fmt; { - if (s == NULL || *s == '\0') - s = "*s<%X>"; + if (s && utf_mode) + { + /* It would be too hard to account for width otherwise. */ + char *t = s; + while (*t) + { + if (*t < ' ' || *t > '~') + { + s = default_fmt; + goto attr; + } + t++; + } + } + + /* %n is evil */ + if (s == NULL || *s == '\0' || + (*s == '*' && (s[1] == '\0' || s[2] == '\0' || strchr(s + 2, 'n'))) || + (*s != '*' && strchr(s, 'n'))) + s = default_fmt; + /* * Select the attributes if it starts with "*". */ + attr: if (*s == '*') { switch (s[1]) @@ -213,26 +293,24 @@ } s += 2; } - binfmt = s; + *fmtvarptr = s; } /* - * Initialize charset data structures. + * */ - public void -init_charset() + static void +set_charset() { - register char *s; + char *s; - s = lgetenv("LESSBINFMT"); - setbinfmt(s); - /* * See if environment variable LESSCHARSET is defined. */ s = lgetenv("LESSCHARSET"); - if (icharset(s)) + if (icharset(s, 0)) return; + /* * LESSCHARSET is not defined: try LESSCHARDEF. */ @@ -243,6 +321,15 @@ return; } +#if HAVE_LOCALE + /* + * Try using the codeset name as the charset name. + */ + s = nl_langinfo(CODESET); + if (icharset(s, 1)) + return; +#endif + #if HAVE_STRSTR /* * Check whether LC_ALL, LC_CTYPE or LANG look like UTF-8 is used. @@ -251,33 +338,55 @@ (s = lgetenv("LC_CTYPE")) != NULL || (s = lgetenv("LANG")) != NULL) { - if (strstr(s, "UTF-8") != NULL || strstr(s, "utf-8") != NULL) - if (icharset("utf-8")) + if ( strstr(s, "UTF-8") != NULL || strstr(s, "utf-8") != NULL + || strstr(s, "UTF8") != NULL || strstr(s, "utf8") != NULL) + if (icharset("utf-8", 1)) return; } #endif #if HAVE_LOCALE /* - * Use setlocale. + * Get character definitions from locale functions, + * rather than from predefined charset entry. */ ilocale(); -#else #if MSDOS_COMPILER /* * Default to "dos". */ - (void) icharset("dos"); + (void) icharset("dos", 1); #else /* * Default to "latin1". */ - (void) icharset("latin1"); + (void) icharset("latin1", 1); #endif #endif } /* + * Initialize charset data structures. + */ + public void +init_charset() +{ + char *s; + +#if HAVE_LOCALE + setlocale(LC_ALL, ""); +#endif + + set_charset(); + + s = lgetenv("LESSBINFMT"); + setbinfmt(s, &binfmt, "*s<%02X>"); + + s = lgetenv("LESSUTFBINFMT"); + setbinfmt(s, &utfbinfmt, ""); +} + +/* * Is a given character a "binary" character? */ public int @@ -307,16 +416,17 @@ prchar(c) int c; { - static char buf[8]; + /* {{ This buffer can be overrun if LESSBINFMT is a long string. }} */ + static char buf[32]; c &= 0377; - if (!control_char(c)) - sprintf(buf, "%c", c); + if ((c < 128 || !utf_mode) && !control_char(c)) + SNPRINTF1(buf, sizeof(buf), "%c", c); else if (c == ESC) - sprintf(buf, "ESC"); + strcpy(buf, "ESC"); #if IS_EBCDIC_HOST else if (!binary_char(c) && c < 64) - sprintf(buf, "^%c", + SNPRINTF1(buf, sizeof(buf), "^%c", /* * This array roughly inverts CONTROL() #defined in less.h, * and should be kept in sync with CONTROL() and IBM-1047. @@ -328,9 +438,598 @@ "..V....D....TU.Z"[c]); #else else if (c < 128 && !control_char(c ^ 0100)) - sprintf(buf, "^%c", c ^ 0100); + SNPRINTF1(buf, sizeof(buf), "^%c", c ^ 0100); #endif else - sprintf(buf, binfmt, c); + SNPRINTF1(buf, sizeof(buf), binfmt, c); + return (buf); +} + +/* + * Return the printable form of a UTF-8 character. + */ + public char * +prutfchar(ch) + LWCHAR ch; +{ + static char buf[32]; + + if (ch == ESC) + strcpy(buf, "ESC"); + else if (ch < 128 && control_char(ch)) + { + if (!control_char(ch ^ 0100)) + SNPRINTF1(buf, sizeof(buf), "^%c", ((char) ch) ^ 0100); + else + SNPRINTF1(buf, sizeof(buf), binfmt, (char) ch); + } else if (is_ubin_char(ch)) + SNPRINTF1(buf, sizeof(buf), utfbinfmt, ch); + else + { + int len; + if (ch >= 0x80000000) + { + len = 3; + ch = 0xFFFD; + } else + { + len = (ch < 0x80) ? 1 + : (ch < 0x800) ? 2 + : (ch < 0x10000) ? 3 + : (ch < 0x200000) ? 4 + : (ch < 0x4000000) ? 5 + : 6; + } + buf[len] = '\0'; + if (len == 1) + *buf = (char) ch; + else + { + *buf = ((1 << len) - 1) << (8 - len); + while (--len > 0) + { + buf[len] = (char) (0x80 | (ch & 0x3F)); + ch >>= 6; + } + *buf |= ch; + } + } return (buf); } + +/* + * Get the length of a UTF-8 character in bytes. + */ + public int +utf_len(ch) + char ch; +{ + if ((ch & 0x80) == 0) + return 1; + if ((ch & 0xE0) == 0xC0) + return 2; + if ((ch & 0xF0) == 0xE0) + return 3; + if ((ch & 0xF8) == 0xF0) + return 4; + if ((ch & 0xFC) == 0xF8) + return 5; + if ((ch & 0xFE) == 0xFC) + return 6; + /* Invalid UTF-8 encoding. */ + return 1; +} + +/* + * Is a UTF-8 character well-formed? + */ + public int +is_utf8_well_formed(s) + unsigned char *s; +{ + int i; + int len; + + if (IS_UTF8_INVALID(s[0])) + return (0); + + len = utf_len((char) s[0]); + if (len == 1) + return (1); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Aug 20 23:25:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F19B216A4DE; Sun, 20 Aug 2006 23:25:20 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B374816A4EF for ; Sun, 20 Aug 2006 23:25:20 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EFC6A43D4C for ; Sun, 20 Aug 2006 23:25:19 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7KNPJUF086610 for ; Sun, 20 Aug 2006 23:25:19 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7KNPIJB086607 for perforce@freebsd.org; Sun, 20 Aug 2006 23:25:18 GMT (envelope-from ryanb@FreeBSD.org) Date: Sun, 20 Aug 2006 23:25:18 GMT Message-Id: <200608202325.k7KNPIJB086607@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 104631 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Aug 2006 23:25:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=104631 Change 104631 by ryanb@ryanb_yuki on 2006/08/20 23:24:34 IFC. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_create/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_io/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_misc/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_open/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/file/ftruncate/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/file/ftruncate/ftruncate.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/fsx/fsx.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/ia64/emulated/brl.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/ia64/emulated/test.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libmp/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libmp/test-libmp.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/lib/libmp/test-libmp.t#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/msocket_ifnet_remove/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpdrop/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpsockclosebeforeaccept/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpsocktimewait/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/netinet6/ip6_sockets/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netinet6/ip6_sockets/ip6_sockets.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/ipxdgramloopback/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/spxabort/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/netipx/spxloopback/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/listen_backlog/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/rtsocket/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/sendfile/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/socketpair/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_bindconnect/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_passfd/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_socket/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/regression/ufs/uprintf/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/support.S#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_machdep.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_sysvec.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0iic/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0iic/doit.c#2 delete .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0iic/main.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0spi/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0spi/doit.c#2 delete .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0spi/main.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootiic/loader_prompt.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootspi/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootspi/arm_init.S#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootspi/arm_init.s#2 delete .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootspi/env_vars.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootspi/env_vars.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootspi/loader_prompt.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootspi/loader_prompt.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootspi/main.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/Makefile#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/delay.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/emac.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/emac.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/emac_init.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/lib_AT91RM9200.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/mci_device.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/mci_device.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/reset.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/sd-card.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/sd-card.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/common/help.common#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/common/loader.8#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/ficl/arm/sysdep.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/ficl/arm/sysdep.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/boot/forth/loader.conf#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/freebsd32/syscalls.master#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/linux/linux_emul.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/linux/linux_emul.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/linux/linux_futex.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/linux/linux_misc.c#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/linux/linux_signal.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/ndis/ntoskrnl_var.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/NOTES#5 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/files.pc98#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/options#5 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/fil.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_auth.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_auth.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_compat.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_fil.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_frag.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_log.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_nat.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_pptp_pxy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_proxy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_rcmd_pxy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_scan.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_state.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_sync.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ip_sync.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/ipl.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/contrib/ipfilter/netinet/mlfk_ipl.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/arl/if_arlreg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ata/ata-chipset.c#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ath/if_athvar.h#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/bge/if_bge.c#5 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/em/if_em.c#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ips/ips.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/usb/usb_port.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/fs/msdosfs/denode.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/geom/vinum/geom_vinum_raid5.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/linux/linux.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/linux/linux_machdep.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/linux/linux_sysvec.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/sys_process.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/syscalls.master#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/uipc_sem.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/uipc_socket.c#5 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/modules/Makefile#5 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_bridge.c#5 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/ip_fastfwd.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/ip_fw.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/ip_fw2.c#5 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/ip_input.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/ip_output.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/nfsclient/nfs_lock.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/pci/nfsmb.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/sys/dirent.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ufs/ufs/ufs_vnops.c#3 integrate Differences ... ==== //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_create/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/fifo/fifo_create/Makefile,v 1.1 2005/09/10 21:09:26 rwatson Exp $ +# $FreeBSD: src/tools/regression/fifo/fifo_create/Makefile,v 1.2 2006/07/09 11:51:11 maxim Exp $ PROG= fifo_create NO_MAN= -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_io/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/fifo/fifo_io/Makefile,v 1.1 2005/09/12 09:42:29 rwatson Exp $ +# $FreeBSD: src/tools/regression/fifo/fifo_io/Makefile,v 1.2 2006/07/09 11:51:11 maxim Exp $ PROG= fifo_io NO_MAN= -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_misc/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/fifo/fifo_misc/Makefile,v 1.1 2005/09/12 11:58:14 rwatson Exp $ +# $FreeBSD: src/tools/regression/fifo/fifo_misc/Makefile,v 1.2 2006/07/09 11:51:11 maxim Exp $ PROG= fifo_misc NO_MAN= -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/fifo/fifo_open/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/fifo/fifo_open/Makefile,v 1.1 2005/09/11 13:03:36 rwatson Exp $ +# $FreeBSD: src/tools/regression/fifo/fifo_open/Makefile,v 1.2 2006/07/09 11:51:11 maxim Exp $ PROG= fifo_open NO_MAN= -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/fsx/fsx.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ * * Updated license to APSL 2.0, 2004/7/27 - Jordan Hubbard * - * $FreeBSD: src/tools/regression/fsx/fsx.c,v 1.3 2004/07/27 20:01:43 jkh Exp $ + * $FreeBSD: src/tools/regression/fsx/fsx.c,v 1.4 2006/08/04 21:45:08 jb Exp $ * */ @@ -475,7 +475,7 @@ void check_eofpage(char *s, unsigned offset, char *p, int size) { - unsigned last_page, should_be_zero; + uintptr_t last_page, should_be_zero; if (offset + size <= (file_size & ~page_mask)) return; @@ -485,7 +485,7 @@ * beyond the true end of the file mapping * (as required by mmap def in 1996 posix 1003.1) */ - last_page = ((int)p + (offset & page_mask) + size) & ~page_mask; + last_page = ((uintptr_t)p + (offset & page_mask) + size) & ~page_mask; for (should_be_zero = last_page + (file_size & page_mask); should_be_zero < last_page + page_size; ==== //depot/projects/soc2006/rbeasley_sound/regression/netinet/msocket_ifnet_remove/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/netinet/msocket_ifnet_remove/Makefile,v 1.2 2006/03/15 10:46:35 ru Exp $ +# $FreeBSD: src/tools/regression/netinet/msocket_ifnet_remove/Makefile,v 1.3 2006/07/09 11:51:12 maxim Exp $ PROG= msocket_ifnet_remove -WARNS= 3 +WARNS?= 3 NO_MAN= .include ==== //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpdrop/Makefile#2 (text) ==== @@ -1,9 +1,9 @@ # -# $FreeBSD: src/tools/regression/netinet/tcpdrop/Makefile,v 1.1 2006/04/03 11:34:36 rwatson Exp $ +# $FreeBSD: src/tools/regression/netinet/tcpdrop/Makefile,v 1.2 2006/07/09 11:51:12 maxim Exp $ # PROG= tcpdrop NO_MAN= -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpsockclosebeforeaccept/Makefile#2 (text) ==== @@ -1,9 +1,9 @@ # -# $FreeBSD: src/tools/regression/netinet/tcpsockclosebeforeaccept/Makefile,v 1.1 2006/04/03 10:08:35 rwatson Exp $ +# $FreeBSD: src/tools/regression/netinet/tcpsockclosebeforeaccept/Makefile,v 1.2 2006/07/09 11:51:12 maxim Exp $ # PROG= tcpsockclosebeforeaccept NO_MAN= -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/netinet/tcpsocktimewait/Makefile#2 (text) ==== @@ -1,9 +1,9 @@ # -# $FreeBSD: src/tools/regression/netinet/tcpsocktimewait/Makefile,v 1.1 2006/04/02 10:50:46 rwatson Exp $ +# $FreeBSD: src/tools/regression/netinet/tcpsocktimewait/Makefile,v 1.2 2006/07/09 11:51:12 maxim Exp $ # PROG= tcpsocktimewait NO_MAN= -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/netipx/ipxdgramloopback/Makefile#2 (text) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/tools/regression/netipx/ipxdgramloopback/Makefile,v 1.1 2006/03/26 18:25:53 rwatson Exp $ +# $FreeBSD: src/tools/regression/netipx/ipxdgramloopback/Makefile,v 1.2 2006/07/09 11:51:12 maxim Exp $ # PROG= ipxdgramloopback @@ -7,6 +7,6 @@ DPADD= ${LIBIPX}; LDADD= -lipx -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/netipx/spxabort/Makefile#2 (text) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/tools/regression/netipx/spxabort/Makefile,v 1.1 2006/03/27 00:03:37 rwatson Exp $ +# $FreeBSD: src/tools/regression/netipx/spxabort/Makefile,v 1.2 2006/07/09 11:51:12 maxim Exp $ # PROG= spxabort @@ -7,6 +7,6 @@ DPADD= ${LIBIPX}; LDADD= -lipx -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/netipx/spxloopback/Makefile#2 (text) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/tools/regression/netipx/spxloopback/Makefile,v 1.1 2006/03/26 19:10:27 rwatson Exp $ +# $FreeBSD: src/tools/regression/netipx/spxloopback/Makefile,v 1.2 2006/07/09 11:51:12 maxim Exp $ # PROG= spxloopback @@ -7,6 +7,6 @@ DPADD= ${LIBIPX}; LDADD= -lipx -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/sockets/listen_backlog/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/sockets/listen_backlog/Makefile,v 1.1 2005/09/18 13:42:19 rwatson Exp $ +# $FreeBSD: src/tools/regression/sockets/listen_backlog/Makefile,v 1.2 2006/07/09 11:51:13 maxim Exp $ PROG= listen_backlog -WARNS= 3 +WARNS?= 3 NO_MAN= .include ==== //depot/projects/soc2006/rbeasley_sound/regression/sockets/rtsocket/Makefile#2 (text) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/sockets/rtsocket/Makefile,v 1.1 2006/04/09 14:48:38 rwatson Exp $ +# $FreeBSD: src/tools/regression/sockets/rtsocket/Makefile,v 1.2 2006/07/09 11:51:13 maxim Exp $ PROG= rtsocket NO_MAN= -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/sockets/sendfile/Makefile#2 (text) ==== @@ -1,9 +1,9 @@ # -# $FreeBSD: src/tools/regression/sockets/sendfile/Makefile,v 1.2 2006/05/25 10:46:43 rwatson Exp $ +# $FreeBSD: src/tools/regression/sockets/sendfile/Makefile,v 1.3 2006/07/09 11:51:13 maxim Exp $ # PROG= sendfile NO_MAN= -WARNS= 2 +WARNS?= 2 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/sockets/socketpair/Makefile#2 (text+ko) ==== @@ -1,9 +1,9 @@ # -# $FreeBSD: src/tools/regression/sockets/socketpair/Makefile,v 1.4 2006/05/25 10:46:43 rwatson Exp $ +# $FreeBSD: src/tools/regression/sockets/socketpair/Makefile,v 1.5 2006/07/09 11:51:13 maxim Exp $ # PROG= socketpair NO_MAN= -WARNS= 2 +WARNS?= 2 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_bindconnect/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/sockets/unix_bindconnect/Makefile,v 1.1 2005/02/20 22:21:53 rwatson Exp $ +# $FreeBSD: src/tools/regression/sockets/unix_bindconnect/Makefile,v 1.2 2006/07/09 11:51:13 maxim Exp $ PROG= unix_bindconnect NO_MAN= -WARNS= 2 +WARNS?= 2 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_passfd/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/sockets/unix_passfd/Makefile,v 1.1 2005/11/09 21:41:20 rwatson Exp $ +# $FreeBSD: src/tools/regression/sockets/unix_passfd/Makefile,v 1.2 2006/07/09 11:51:13 maxim Exp $ PROG= unix_passfd NO_MAN= -WARNS= 2 +WARNS?= 2 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/sockets/unix_socket/Makefile#2 (text) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/sockets/unix_socket/Makefile,v 1.1 2006/04/09 14:30:11 rwatson Exp $ +# $FreeBSD: src/tools/regression/sockets/unix_socket/Makefile,v 1.2 2006/07/09 11:51:14 maxim Exp $ PROG= unix_socket NO_MAN= -WARNS= 3 +WARNS?= 3 .include ==== //depot/projects/soc2006/rbeasley_sound/regression/ufs/uprintf/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/tools/regression/ufs/uprintf/Makefile,v 1.1 2005/09/19 16:29:36 rwatson Exp $ +# $FreeBSD: src/tools/regression/ufs/uprintf/Makefile,v 1.2 2006/07/09 11:51:14 maxim Exp $ PROG= ufs_uprintf -WARNS= 3 +WARNS?= 3 NO_MAN= .include ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/support.S#3 (text+ko) ==== @@ -27,7 +27,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/support.S,v 1.118 2006/08/15 22:43:02 davidxu Exp $ + * $FreeBSD: src/sys/amd64/amd64/support.S,v 1.119 2006/08/16 22:22:28 davidxu Exp $ */ #include "opt_ddb.h" @@ -432,7 +432,7 @@ ja fusufault movq %rsi,(%rdi) - xorq %rax,%rax + xorl %eax,%eax movq PCPU(CURPCB),%rcx movq %rax,PCB_ONFAULT(%rcx) ret ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux.h#3 (text+ko) ==== @@ -27,17 +27,13 @@ * (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.3 2006/08/15 12:54:29 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_ #define _AMD64_LINUX_LINUX_H_ #include /* for sigval union */ -#include -#include -#include -#include #include @@ -766,7 +762,8 @@ #define LINUX_LOWERWORD 0x0000ffff -/* macros which does the same thing as those in linux include/asm-um/ldt-i386.h +/* + * macros which does the same thing as those in linux include/asm-um/ldt-i386.h * these convert linux user-space descriptor to machine one */ #define LDT_entry_a(info) \ ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_machdep.c#3 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.13 2006/08/15 12:54:29 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.15 2006/08/20 13:50:27 netchild Exp $"); #include #include @@ -60,6 +60,7 @@ #include #include #include +#include struct l_old_select_argv { l_int nfds; @@ -211,6 +212,14 @@ free(path, M_TEMP); if (error == 0) error = kern_execve(td, &eargs, NULL); + if (error == 0) + /* linux process can exec fbsd one, dont attempt + * to create emuldata for such process using + * linux_proc_init, this leads to a panic on KASSERT + * because such process has p->p_emuldata == NULL + */ + if (td->td_proc->p_sysent == &elf_linux_sysvec) + error = linux_proc_init(td, 0, 0); return (error); } @@ -452,6 +461,10 @@ if (td->td_retval[1] == 1) td->td_retval[0] = 0; + error = linux_proc_init(td, td->td_retval[0], 0); + if (error) + return (error); + return (0); } @@ -470,6 +483,9 @@ /* Are we the child? */ if (td->td_retval[1] == 1) td->td_retval[0] = 0; + error = linux_proc_init(td, td->td_retval[0], 0); + if (error) + return (error); return (0); } @@ -480,12 +496,14 @@ struct proc *p2; struct thread *td2; int exit_signal; + struct linux_emuldata *em; #ifdef DEBUG if (ldebug(clone)) { - printf(ARGS(clone, "flags %x, stack %x"), - (unsigned int)(uintptr_t)args->flags, - (unsigned int)(uintptr_t)args->stack); + printf(ARGS(clone, "flags %x, stack %x, parent tid: %x, child tid: %x"), + (unsigned int)args->flags, (unsigned int)(uintptr_t)args->stack, + (unsigned int)(uintptr_t)args->parent_tidptr, + (unsigned int)(uintptr_t)args->child_tidptr); } #endif @@ -503,21 +521,90 @@ if (!(args->flags & CLONE_FILES)) ff |= RFFDG; + /* + * Attempt to detect when linux_clone(2) is used for creating + * kernel threads. Unfortunately despite the existence of the + * CLONE_THREAD flag, version of linuxthreads package used in + * most popular distros as of beginning of 2005 doesn't make + * any use of it. Therefore, this detection relay fully on + * empirical observation that linuxthreads sets certain + * combination of flags, so that we can make more or less + * precise detection and notify the FreeBSD kernel that several + * processes are in fact part of the same threading group, so + * that special treatment is necessary for signal delivery + * between those processes and fd locking. + */ + if ((args->flags & 0xffffff00) == THREADING_FLAGS) + ff |= RFTHREAD; + error = fork1(td, ff, 0, &p2); if (error) return (error); + /* create the emuldata */ + error = linux_proc_init(td, p2->p_pid, args->flags); + /* reference it - no need to check this */ + em = em_find(p2, EMUL_UNLOCKED); + KASSERT(em != NULL, ("clone: emuldata not found.\n")); + /* and adjust it */ + if (args->flags & CLONE_PARENT_SETTID) { + if (args->parent_tidptr == NULL) { + EMUL_UNLOCK(&emul_lock); + return (EINVAL); + } + error = copyout(&p2->p_pid, args->parent_tidptr, sizeof(p2->p_pid)); + if (error) { + EMUL_UNLOCK(&emul_lock); + return (error); + } + } + if (args->flags & CLONE_PARENT) { +#ifdef DEBUG + printf("linux_clone: CLONE_PARENT\n"); +#endif + } + + if (args->flags & CLONE_THREAD) { + /* XXX: linux mangles pgrp and pptr somehow + * I think it might be this but I am not sure. + */ +#ifdef notyet + p2->p_pgrp = td->td_proc->p_pgrp; + p2->p_pptr = td->td_proc->p_pptr; +#endif + exit_signal = 0; +#ifdef DEBUG + printf("linux_clone: CLONE_THREADS\n"); +#endif + } + + if (args->flags & CLONE_CHILD_SETTID) + em->child_set_tid = args->child_tidptr; + else + em->child_set_tid = NULL; + + if (args->flags & CLONE_CHILD_CLEARTID) + em->child_clear_tid = args->child_tidptr; + else + em->child_clear_tid = NULL; + EMUL_UNLOCK(&emul_lock); + PROC_LOCK(p2); p2->p_sigparent = exit_signal; PROC_UNLOCK(p2); td2 = FIRST_THREAD_IN_PROC(p2); - /* in a case of stack = NULL we are supposed to COW calling process stack + /* + * in a case of stack = NULL we are supposed to COW calling process stack * this is what normal fork() does so we just keep the tf_rsp arg intact */ if (args->stack) td2->td_frame->tf_rsp = PTROUT(args->stack); + if (args->flags & CLONE_SETTLS) { + /* XXX: todo */ + } + #ifdef DEBUG if (ldebug(clone)) printf(LMSG("clone: successful rfork to %ld, stack %p sig = %d"), @@ -628,7 +715,8 @@ if (linux_args->flags & LINUX_MAP_GROWSDOWN) { bsd_args.flags |= MAP_STACK; - /* The linux MAP_GROWSDOWN option does not limit auto + /* + * The linux MAP_GROWSDOWN option does not limit auto * growth of the region. Linux mmap with this option * takes as addr the inital BOS, and as len, the initial * region size. It can then grow down from addr without @@ -655,7 +743,8 @@ if ((caddr_t)PTRIN(bsd_args.addr) > p->p_vmspace->vm_maxsaddr) { - /* Some linux apps will attempt to mmap + /* + * Some linux apps will attempt to mmap * thread stacks near the top of their * address space. If their TOS is greater * than vm_maxsaddr, vm_map_growstack() @@ -683,7 +772,8 @@ else bsd_args.len = STACK_SIZE - GUARD_SIZE; - /* This gives us a new BOS. If we're using VM_STACK, then + /* + * This gives us a new BOS. If we're using VM_STACK, then * mmap will just map the top SGROWSIZ bytes, and let * the stack grow down to the limit at BOS. If we're * not using VM_STACK we map the full stack, since we ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_sysvec.c#3 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_sysvec.c,v 1.21 2006/08/15 14:58:15 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_sysvec.c,v 1.23 2006/08/17 21:06:48 netchild Exp $"); #include "opt_compat.h" #ifndef COMPAT_IA32 @@ -125,8 +125,6 @@ extern LIST_HEAD(futex_list, futex) futex_list; extern struct mtx futex_mtx; -extern struct sx emul_shared_lock; -extern struct sx emul_lock; static eventhandler_tag linux_exit_tag; static eventhandler_tag linux_schedtail_tag; @@ -1079,6 +1077,7 @@ linux_ioctl_register_handler(*lihp); SET_FOREACH(ldhp, linux_device_handler_set) linux_device_register_handler(*ldhp); + sx_init(&emul_lock, "emuldata lock"); sx_init(&emul_shared_lock, "emuldata->shared lock"); LIST_INIT(&futex_list); mtx_init(&futex_mtx, "futex protection lock", NULL, MTX_DEF); ==== //depot/projects/soc2006/rbeasley_sound/sys/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 ==== //depot/projects/soc2006/rbeasley_sound/sys/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 ==== //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0iic/Makefile#2 (text) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/sys/boot/arm/at91/boot0iic/Makefile,v 1.1 2006/04/21 06:48:52 imp Exp $ +# $FreeBSD: src/sys/boot/arm/at91/boot0iic/Makefile,v 1.2 2006/08/16 23:14:52 imp Exp $ .PATH: ${.CURDIR}/../boot0 P=boot0iic FILES=${P} -SRCS=arm_init.s main.c doit.c +SRCS=arm_init.s main.c NO_MAN= LDFLAGS=-e 0 -T ${.CURDIR}/../linker.cfg OBJS+= ${SRCS:N*.h:R:S/$/.o/g} ==== //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0iic/main.c#2 (text) ==== @@ -21,15 +21,13 @@ * (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/boot/arm/at91/boot0iic/main.c,v 1.1 2006/04/21 06:48:52 imp Exp $ + * $FreeBSD: src/sys/boot/arm/at91/boot0iic/main.c,v 1.2 2006/08/16 23:14:52 imp Exp $ */ #include "at91rm9200.h" #include "lib.h" #include "at91rm9200_lowlevel.h" -extern void doit(void *); - int main(void) { @@ -37,6 +35,9 @@ while (xmodem_rx(addr) == -1) continue; - doit(addr); + InitEEPROM(); + printf("Writing EEPROM from 0x%x to addr 0\r\n", addr); + WriteEEPROM(0, addr, 8192); + printf("Write complete. Press reset\r\n"); return (1); } ==== //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0spi/Makefile#2 (text) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/sys/boot/arm/at91/boot0spi/Makefile,v 1.1 2006/04/21 06:51:08 imp Exp $ +# $FreeBSD: src/sys/boot/arm/at91/boot0spi/Makefile,v 1.2 2006/08/16 23:18:07 imp Exp $ .PATH: ${.CURDIR}/../boot0 P=boot0spi FILES=${P} -SRCS=arm_init.s main.c doit.c +SRCS=arm_init.s main.c NO_MAN= LDFLAGS=-e 0 -T ${.CURDIR}/../linker.cfg OBJS+= ${SRCS:N*.h:R:S/$/.o/g} ==== //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/boot0spi/main.c#2 (text) ==== @@ -21,22 +21,41 @@ * (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/boot/arm/at91/boot0spi/main.c,v 1.1 2006/04/21 06:51:08 imp Exp $ + * $FreeBSD: src/sys/boot/arm/at91/boot0spi/main.c,v 1.2 2006/08/16 23:18:07 imp Exp $ */ #include "at91rm9200.h" #include "lib.h" #include "at91rm9200_lowlevel.h" +#include "spi_flash.h" -extern void doit(void *); +#define OFFSET 0 int main(void) { + int len, i, j, off; char *addr = (char *)SDRAM_BASE + (1 << 20); /* Load to base + 1MB */ + char *addr2 = (char *)SDRAM_BASE + (2 << 20); /* Load to base + 2MB */ + char *addr3 = (char *)SDRAM_BASE + (3 << 20); /* Load to base + 2MB */ - while (xmodem_rx(addr) == -1) + SPI_InitFlash(); + printf("Waiting for data\r\n"); + while ((len = xmodem_rx(addr)) == -1) continue; - doit(addr); + printf("\r\nDownloaded %u bytes.\r\n", len); + p_memcpy(addr3, addr, (len + FLASH_PAGE_SIZE - 1) / FLASH_PAGE_SIZE * FLASH_PAGE_SIZE); + printf("Writing %u bytes to flash at %u\r\n", len, OFFSET); + for (i = 0; i < len; i+= FLASH_PAGE_SIZE) { + for (j = 0; j < 10; j++) { + off = i + OFFSET; + SPI_WriteFlash(off, addr + i, FLASH_PAGE_SIZE); + SPI_ReadFlash(off, addr2 + i, FLASH_PAGE_SIZE); + if (p_memcmp(addr3 + i, addr2 + i, FLASH_PAGE_SIZE) == 0) + break; + } + if (j >= 10) + printf("Bad Readback at %u\r\n", i); + } return (1); } ==== //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootiic/loader_prompt.c#2 (text+ko) ==== @@ -19,7 +19,7 @@ * only. * END_BLOCK * - * $FreeBSD: src/sys/boot/arm/at91/bootiic/loader_prompt.c,v 1.1 2006/08/10 19:55:52 imp Exp $ + * $FreeBSD: src/sys/boot/arm/at91/bootiic/loader_prompt.c,v 1.2 2006/08/16 23:39:58 imp Exp $ *****************************************************************************/ #include "at91rm9200_lowlevel.h" @@ -266,7 +266,7 @@ if (argc > 6) { for (i = 0; i < 6; i++) mac[i] = p_ASCIIToHex(argv[i + 1]); - SetMACAddress(mac); + EMAC_SetMACAddress(mac); } break; } ==== //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootspi/Makefile#2 (text) ==== @@ -1,10 +1,14 @@ -# $FreeBSD: src/sys/boot/arm/at91/bootspi/Makefile,v 1.1 2006/04/19 17:16:48 imp Exp $ +# $FreeBSD: src/sys/boot/arm/at91/bootspi/Makefile,v 1.2 2006/08/16 23:39:58 imp Exp $ P=bootspi FILES=${P} -SRCS=arm_init.s main.c +SRCS=arm_init.S main.c loader_prompt.c env_vars.c NO_MAN= LDFLAGS=-e 0 -T ${.CURDIR}/../linker.cfg OBJS+= ${SRCS:N*.h:R:S/$/.o/g} .include + +.if ${MK_FPGA} != "no" +CFLAGS += -DTSC_FPGA +.endif ==== //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/bootspi/main.c#2 (text) ==== @@ -1,57 +1,58 @@ -/******************************************************************************* +/*- + * Copyright (c) 2006 M. Warner Losh. All rights reserved. * - * Filename: main.c + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. * - * Basic entry points for top-level functions + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * Revision information: - * - * 20AUG2004 kb_admin initial creation - * 12JAN2005 kb_admin cosmetic changes - * 29APR2005 kb_admin modified boot delay + * This software is derived from software provided by kwikbyte without + * copyright as follows: * - * BEGIN_KBDD_BLOCK * No warranty, expressed or implied, is included with this software. It is * provided "AS IS" and no warranty of any kind including statutory or aspects * relating to merchantability or fitness for any purpose is provided. All * intellectual property rights of others is maintained with the respective * owners. This software is not copyrighted and is intended for reference * only. - * END_BLOCK * - * $FreeBSD: src/sys/boot/arm/at91/bootspi/main.c,v 1.1 2006/04/19 17:16:48 imp Exp $ - ******************************************************************************/ + * $FreeBSD: src/sys/boot/arm/at91/bootspi/main.c,v 1.2 2006/08/16 23:39:58 imp Exp $ + */ #include "env_vars.h" +#include "at91rm9200.h" #include "at91rm9200_lowlevel.h" #include "loader_prompt.h" #include "emac.h" #include "lib.h" +#include "spi_flash.h" -/* - * .KB_C_FN_DEFINITION_START - * int main(void) - * This global function waits at least one second, but not more than two - * seconds, for input from the serial port. If no response is recognized, - * it acts according to the parameters specified by the environment. For - * example, the function might boot an operating system. Do not return - * from this function. - * .KB_C_FN_DEFINITION_END - */ int main(void) { - + printf("\r\nBoot\r\n"); + SPI_InitFlash(); EMAC_Init(); - LoadBootCommands(); - - printf("\r\nSPI Boot loader.\r\nAutoboot...\r\n"); - - if (getc(1) == -1) + if (getc(1) == -1) { + start_wdog(30); ExecuteEnvironmentFunctions(); - - Bootloader(0); - + } + Bootloader(getc); return (1); } ==== //depot/projects/soc2006/rbeasley_sound/sys/boot/arm/at91/libat91/Makefile#3 (text) ==== @@ -1,11 +1,12 @@ -# $FreeBSD: src/sys/boot/arm/at91/libat91/Makefile,v 1.3 2006/08/10 18:14:35 imp Exp $ +# $FreeBSD: src/sys/boot/arm/at91/libat91/Makefile,v 1.4 2006/08/16 23:39:58 imp Exp $ .include "${.CURDIR}/../Makefile.inc" LIB= at91 INTERNALLIB= -SRCS=at91rm9200_lowlevel.c eeprom.c emac.c getc.c \ - p_string.c putchar.c printf.c spi_flash.c xmodem.c +SRCS=at91rm9200_lowlevel.c delay.c eeprom.c emac.c emac_init.c getc.c \ + p_string.c putchar.c printf.c reset.c spi_flash.c xmodem.c \ + sd-card.c mci_device.c >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Aug 21 00:21:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2B59C16A4DF; Mon, 21 Aug 2006 00:21:35 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CED6B16A4DD for ; Mon, 21 Aug 2006 00:21:34 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7277443D45 for ; Mon, 21 Aug 2006 00:21:34 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L0LY6C090270 for ; Mon, 21 Aug 2006 00:21:34 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L0LXqo090267 for perforce@freebsd.org; Mon, 21 Aug 2006 00:21:33 GMT (envelope-from ryanb@FreeBSD.org) Date: Mon, 21 Aug 2006 00:21:33 GMT Message-Id: <200608210021.k7L0LXqo090267@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 104633 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 00:21:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=104633 Change 104633 by ryanb@ryanb_yuki on 2006/08/21 00:20:40 Integrate from user branch Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/channel_if.m#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#12 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/mixer.c#8 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/mixer.h#7 integrate Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/channel_if.m#3 (text+ko) ==== @@ -189,14 +189,13 @@ * (e.g., application wants direct DMA access after setting a channel to run * "uncooked"). * - * @todo Once 4Front docs for SNDCTL_AUDIOINFO are back, double check to - * make sure that such tables are truly static. I'm wondering if it's - * possible for a driver's supported rates to change depending on the - * card's operating mode. + * The parameter @c rates is a double pointer which will be reset to + * point to an array of supported sample rates. The number of elements + * in the array is returned to the caller. * * @param obj standard kobj object (usually @c channel->methods) * @param data driver-specific data (usually @c channel->devinfo) - * @param rates if successful, will point to static array of supported rates + * @param rates rate array pointer * * @return Number of rates in the array */ ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#12 (text+ko) ==== @@ -451,6 +451,20 @@ return EBADF; } + /* + * Certain ioctls may be made on any type of device (audio, mixer, + * and MIDI). + */ + if (IOCGROUP(cmd) == 'X') { + switch(cmd) { + case SNDCTL_MIXERINFO: + return mixer_oss_mixerinfo(i_dev, (oss_mixerinfo *)arg); + break; + default: + return EINVAL; + } + } + getchns(i_dev, &rdch, &wrch, 0); kill = 0; @@ -1090,7 +1104,6 @@ if (d->mixer_dev != NULL) ret = mixer_ioctl(d->mixer_dev, xcmd, arg, -1, td); else - /** @todo verify that this is the correct error */ ret = ENOTSUP; break; @@ -1100,8 +1113,7 @@ if (d->mixer_dev != NULL) ret = mixer_ioctl(d->mixer_dev, cmd, arg, -1, td); else - /** @todo verify error correctness */ - ret = EINVAL; + ret = ENOTSUP; break; /* @@ -1199,10 +1211,10 @@ * from the 4Front drivers. However, I don't expect this to be * much of a problem. * - * @todo In a test where this ioctl is called immediately after write + * @note In a test where @c CURRENT_OPTR is called immediately after write * returns, this driver is about 32K samples behind whereas - * 4Front's is about 8K samples behind. Must determine source - * of discrepancy. + * 4Front's is about 8K samples behind. Should determine source + * of discrepancy, even if only out of curiosity. * * @todo Actually test SNDCTL_DSP_CURRENT_IPTR. */ @@ -1566,7 +1578,7 @@ * the sound subsystem scans for an available audio channel (or channels, if * opened in read+write) and then assigns them to the si_drv[12] private * data fields. As a result, any information returned linking a channel to - * a specific character device isn't really accurate. + * a specific character device isn't necessarily accurate. * * @note * Calling threads must not hold any snddev_info or pcm_channel locks. @@ -1578,10 +1590,6 @@ * @retval EINVAL ai->dev specifies an invalid device * * @todo Verify correctness of Doxygen tags. ;) - * @todo Ask about device and channel locking; with D_NEEDGIANT, am I safe - * for now? - * @todo Discuss rectifying the channel/cdev relationship. OSS will return - * EBUSY if applications attempt to open a DSP device more than once. */ int dsp_oss_audioinfo(struct cdev *i_dev, oss_audioinfo *ai) @@ -1591,9 +1599,14 @@ struct pcm_channel *ch; struct snddev_info *d; struct cdev *t_cdev; - int i, nchan, ret, *rates; + uint32_t fmts; + int i, nchan, ret, *rates, minch, maxch; - /* If probing handling device, make sure it's a DSP device. */ + /* + * If probing the device that received the ioctl, make sure it's a + * DSP device. (Users may use this ioctl with /dev/mixer and + * /dev/midi.) + */ if ((ai->dev == -1) && (i_dev->si_devsw != &dsp_cdevsw)) return EINVAL; @@ -1602,7 +1615,10 @@ nchan = 0; ret = 0; - /* Search for the requested audio device. */ + /* + * Search for the requested audio device (channel). Start by + * iterating over pcm devices. + */ for (i = 0; i < devclass_get_maxunit(pcm_devclass); i++) { d = devclass_get_softc(pcm_devclass, i); if (d == NULL) @@ -1618,8 +1634,8 @@ mtx_assert(ch->lock, MA_NOTOWNED); CHN_LOCK(ch); if (ai->dev == -1) { - if ((ch == i_dev->si_drv1) || - (ch == i_dev->si_drv2)) { + if ((ch == i_dev->si_drv1) || /* record ch */ + (ch == i_dev->si_drv2)) { /* playback ch */ t_cdev = i_dev; goto dspfound; } @@ -1678,15 +1694,46 @@ */ ai->pid = ch->pid; + /* + * These flags stolen from SNDCTL_DSP_GETCAPS handler. Note, however, + * that a single channel operates in only one direction, so + * DSP_CAP_DUPLEX is out. + */ /** - * @todo @c caps - Should take the SNDCTL_DSP_GETCAPS route. - * Question: Since no drivers actually use the caps - * field of pcmchan_caps, why not store DSP_CAP_* - * values there? - * @todo @c iformats - chn_getformats includes sw emulated formats, - * but cmd is supposed to ask hardware directly - * @todo @c oformats - same as iformats + * @todo @c SNDCTL_AUDIOINFO::caps - Make drivers keep these in + * pcmchan::caps? + */ + ai->caps = DSP_CAP_REALTIME | DSP_CAP_MMAP | DSP_CAP_TRIGGER; + + /* + * Collect formats supported @b natively by the device. Also + * determine min/max channels. (I.e., mono, stereo, or both?) * + * If any channel is stereo, maxch = 2; + * if all channels are stereo, minch = 2, too; + * if any channel is mono, minch = 1; + * and if all channels are mono, maxch = 1. + */ + minch = 0; + maxch = 0; + fmts = 0; + for (i = 0; caps->fmtlist[i]; i++) { + fmts |= caps->fmtlist[i]; + if (caps->fmtlist[i] & AFMT_STEREO) { + minch = (minch == 0) ? 2 : minch; + maxch = 2; + } else { + minch = 1; + maxch = (maxch == 0) ? 1 : maxch; + } + } + + if (ch->direction == PCMDIR_PLAY) + ai->oformats = fmts; + else + ai->iformats = fmts; + + /** * @note * @c magic - OSSv4 docs: "Reserved for internal use by OSS." * @@ -1696,16 +1743,11 @@ * Applications should normally not use this field for any * purpose." */ - if (ch->direction == PCMDIR_PLAY) - ai->iformats = chn_getformats(ch); - else - ai->oformats = chn_getformats(ch); - ai->card_number = -1; /** * @todo @c song_name - depends first on SNDCTL_[GS]ETSONG * @todo @c label - depends on SNDCTL_[GS]ETLABEL - * @todo @c port_number - device unit number? + * @todo @c port_number - routing information? */ ai->port_number = -1; ai->mixer_dev = (d->mixer_dev != NULL) ? PCMUNIT(d->mixer_dev) : -1; @@ -1720,9 +1762,6 @@ * @note * @c flags - OSSv4 docs: "Reserved for future use." * - * @todo @c min_channels, @c max_channels - A little more research - * is required. - * * @note * @c binding - OSSv4 docs: "Reserved for future use." * @@ -1732,7 +1771,12 @@ ai->min_rate = caps->minspeed; ai->max_rate = caps->maxspeed; + ai->min_channels = minch; + ai->max_channels = maxch; + ai->nrates = chn_getrates(ch, &rates); + if (ai->nrates > MAX_SAMPLE_RATES) + ai->nrates = MAX_SAMPLE_RATES; for (i = 0; i < ai->nrates; i++) ai->rates[i] = rates[i]; @@ -1758,6 +1802,10 @@ * sync group is created. Otherwise, wrch and rdch (if set) are added to * the group specified. * + * @todo As far as memory allocation, should we assume that things are + * okay and allocate with M_WAITOK before acquiring channel locks, + * freeing later if not? + * * @param wrch output channel associated w/ device (if any) * @param rdch input channel associated w/ device (if any) * @param group Sync group parameters @@ -1780,18 +1828,14 @@ PCM_SG_LOCK(); /* - * - If device's channels are already mapped to a group, unmap them. - * - Verify that mode matches device properites. - * - Bail if PCM_ENABLE_OUTPUT && wrch == NULL. - * - Bail if PCM_ENABLE_INPUT && rdch == NULL. - * - If group->id != 0, lookup group. - * - Bail if group not found. - * - If group->id == 0, create a new group. * - Insert channel(s) into group's member list. * - Set CHN_F_NOTRIGGER on channel(s). * - Stop channel(s). */ + /* + * If device's channels are already mapped to a group, unmap them. + */ if (wrch) { CHN_LOCK(wrch); chn_syncdestroy(wrch); @@ -1802,6 +1846,11 @@ chn_syncdestroy(rdch); } + /* + * Verify that mode matches character device properites. + * - Bail if PCM_ENABLE_OUTPUT && wrch == NULL. + * - Bail if PCM_ENABLE_INPUT && rdch == NULL. + */ if (((wrch == NULL) && (group->mode & PCM_ENABLE_OUTPUT)) || ((rdch == NULL) && (group->mode & PCM_ENABLE_INPUT))) { ret = EINVAL; @@ -1831,9 +1880,14 @@ ret = EINVAL; } + /* Couldn't create or find a syncgroup. Fail. */ if (sg == NULL) goto bad; + /* + * Allocate a syncmember, assign it and a channel together, and + * insert into syncgroup. + */ if (group->mode & PCM_ENABLE_INPUT) { smrd = (struct pcmchan_syncmember *)malloc(sizeof(*smrd), M_DEVBUF, M_NOWAIT); if (smrd == NULL) { ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/mixer.c#8 (text+ko) ==== @@ -50,6 +50,12 @@ char name[MIXER_NAMELEN]; struct mtx *lock; oss_mixer_enuminfo enuminfo; + /** + * Counter is incremented when applications change any of this + * mixer's controls. A change in value indicates that persistent + * mixer applications should update their displays. + */ + int modify_counter; }; static u_int16_t snd_mixerdefaults[SOUND_MIXER_NRDEVICES] = { @@ -630,6 +636,11 @@ return EBADF; } + if (cmd == SNDCTL_MIXERINFO) { + snd_mtxunlock(m->lock); + return mixer_oss_mixerinfo(i_dev, (oss_mixerinfo *)arg); + } + if ((cmd & MIXER_WRITE(0)) == MIXER_WRITE(0)) { if (j == SOUND_MIXER_RECSRC) ret = mixer_setrecsrc(m, *arg_i); @@ -724,3 +735,155 @@ SYSINIT(mixer_sysinit, SI_SUB_DRIVERS, SI_ORDER_MIDDLE, mixer_sysinit, NULL); SYSUNINIT(mixer_sysuninit, SI_SUB_DRIVERS, SI_ORDER_MIDDLE, mixer_sysuninit, NULL); #endif + +/** + * @brief Handler for SNDCTL_MIXERINFO + * + * This function searches for a mixer based on the numeric ID stored + * in oss_miserinfo::dev. If set to -1, then information about the + * current mixer handling the request is provided. Note, however, that + * this ioctl may be made with any sound device (audio, mixer, midi). + * + * @note Caller must not hold any PCM device, channel, or mixer locks. + * + * See http://manuals.opensound.com/developer/SNDCTL_MIXERINFO.html for + * more information. + * + * @param i_dev character device on which the ioctl arrived + * @param arg user argument (oss_mixerinfo *) + * + * @retval EINVAL oss_mixerinfo::dev specified a bad value + * @retval 0 success + */ +int +mixer_oss_mixerinfo(struct cdev *i_dev, oss_mixerinfo *mi) +{ + struct snddev_info *d; + struct snd_mixer *m; + struct cdev *t_cdev; + int nmix, ret, pcmunit, i; + + /* + * If probing the device handling the ioctl, make sure it's a mixer + * device. (This ioctl is valid on audio, mixer, and midi devices.) + */ + if ((mi->dev == -1) && (i_dev->si_devsw != &mixer_cdevsw)) + return EINVAL; + + m = NULL; + t_cdev = NULL; + nmix = 0; + ret = 0; + pcmunit = -1; /* pcmX */ + + /* + * There's a 1:1 relationship between mixers and PCM devices, so + * begin by iterating over PCM devices and search for our mixer. + */ + for (i = 0; i < devclass_get_maxunit(pcm_devclass); i++) { + d = devclass_get_softc(pcm_devclass, i); + if (d == NULL) + continue; + + /* See the note in function docblock. */ + mtx_assert(d->lock, MA_NOTOWNED); + pcm_inprog(d, 1); + pcm_lock(d); + + if (d->mixer_dev != NULL) { + if (((mi->dev == -1) && (d->mixer_dev == i_dev)) || (mi->dev == nmix)) { + t_cdev = d->mixer_dev; + pcmunit = i; + break; + } + ++nmix; + } + + pcm_unlock(d); + pcm_inprog(d, -1); + } + + /* + * If t_cdev is NULL, then search was exhausted and device wasn't + * found. No locks are held, so just return. + */ + if (t_cdev == NULL) + return EINVAL; + + m = t_cdev->si_drv1; + mtx_lock(m->lock); + + /* + * At this point, the following synchronization stuff has happened: + * - a specific PCM device is locked and its "in progress + * operations" counter has been incremented, so be sure to unlock + * and decrement when exiting; + * - a specific mixer device has been locked, so be sure to unlock + * when existing. + */ + + bzero((void *)mi, sizeof(*mi)); + + mi->dev = nmix; + snprintf(mi->id, sizeof(mi->id), "mixer%d", dev2unit(t_cdev)); + strlcpy(mi->name, m->name, sizeof(mi->name)); + mi->modify_counter = m->modify_counter; + mi->card_number = pcmunit; + /* + * Currently, FreeBSD assumes 1:1 relationship between a pcm and + * mixer devices, so this is hardcoded to 0. + */ + mi->port_number = 0; + + /** + * @todo Fill in @sa oss_mixerinfo::mixerhandle. + * @note From 4Front: "mixerhandle is an arbitrary string that + * identifies the mixer better than the device number + * (mixerinfo.dev). Device numbers may change depending on + * the order the drivers are loaded. However the handle + * should remain the same provided that the sound card is + * not moved to another PCI slot." + */ + + /** + * @note + * @sa oss_mixerinfo::magic is a reserved field. + * + * @par + * From 4Front: "magic is usually 0. However some devices may have + * dedicated setup utilities and the magic field may contain an + * unique driver specific value (managed by [4Front])." + */ + + mi->enabled = device_is_attached(m->dev) ? 1 : 0; + /** + * The only flag for @sa oss_mixerinfo::caps is currently + * MIXER_CAP_VIRTUAL, which I'm not sure we really worry about. + */ + /** + * Mixer extensions currently aren't supported, so leave + * @sa oss_mixerinfo::nrext blank for now. + */ + /** + * @todo Fill in @sa oss_mixerinfo::priority (requires touching + * drivers?) + * @note The priority field is for mixer applets to determine which + * mixer should be the default, with 0 being least preferred and 10 + * being most preferred. From 4Front: "OSS drivers like ICH use + * higher values (10) because such chips are known to be used only + * on motherboards. Drivers for high end pro devices use 0 because + * they will never be the default mixer. Other devices use values 1 + * to 9 depending on the estimated probability of being the default + * device. + * + * XXX Described by Hannu@4Front, but not found in soundcard.h. + strlcpy(mi->devnode, t_cdev->si_name, sizeof(mi->devnode)); + mi->legacy_device = pcmunit; + */ + + mtx_unlock(m->lock); + pcm_unlock(d); + pcm_inprog(d, -1); + + return ret; +} ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/mixer.h#7 (text+ko) ==== @@ -30,6 +30,7 @@ int mixer_uninit(device_t dev); int mixer_reinit(device_t dev); int mixer_ioctl(struct cdev *i_dev, u_long cmd, caddr_t arg, int mode, struct thread *td); +int mixer_oss_mixerinfo(struct cdev *i_dev, oss_mixerinfo *mi); int mixer_hwvol_init(device_t dev); void mixer_hwvol_mute(device_t dev); From owner-p4-projects@FreeBSD.ORG Mon Aug 21 01:42:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 22E8316A4E6; Mon, 21 Aug 2006 01:42:24 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EEEA716A4DF for ; Mon, 21 Aug 2006 01:42:23 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B403243D5A for ; Mon, 21 Aug 2006 01:42:23 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L1gNPZ003643 for ; Mon, 21 Aug 2006 01:42:23 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L1gNP1003640 for perforce@freebsd.org; Mon, 21 Aug 2006 01:42:23 GMT (envelope-from bushman@freebsd.org) Date: Mon, 21 Aug 2006 01:42:23 GMT Message-Id: <200608210142.k7L1gNP1003640@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 104642 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 01:42:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=104642 Change 104642 by bushman@bushman_nss_ldap_cached_make on 2006/08/21 01:42:02 IFC Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/etc/pccard_ether#3 integrate .. //depot/projects/soc2006/nss_ldap_cached/src/etc/rc.subr#5 integrate Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/etc/pccard_ether#3 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh - # -# $FreeBSD: src/etc/pccard_ether,v 1.49 2006/08/17 03:03:38 brooks Exp $ +# $FreeBSD: src/etc/pccard_ether,v 1.50 2006/08/18 13:19:45 brooks Exp $ # # pccard_ether interfacename [start|stop|restart] # @@ -67,6 +67,8 @@ pccard_ether_start() { + ifexists $ifn || exit 1 + if [ -z "$rc_force" -a -x /usr/bin/grep ]; then if ifconfig $ifn | grep -s '[<,]UP[,>]' > /dev/null 2>&1; then # Interface is already up, so ignore it. ==== //depot/projects/soc2006/nss_ldap_cached/src/etc/rc.subr#5 (text+ko) ==== @@ -1,5 +1,5 @@ # $NetBSD: rc.subr,v 1.66 2006/04/01 10:05:50 he Exp $ -# $FreeBSD: src/etc/rc.subr,v 1.65 2006/08/17 08:04:20 yar Exp $ +# $FreeBSD: src/etc/rc.subr,v 1.67 2006/08/18 13:07:38 yar Exp $ # # Copyright (c) 1997-2004 The NetBSD Foundation, Inc. # All rights reserved. @@ -54,8 +54,9 @@ CMD_OSTYPE="${SYSCTL_N} kern.ostype" OSTYPE=`${CMD_OSTYPE}` ID="/usr/bin/id" -JID=`ps -p $$ -o jid=` IDCMD="if [ -x $ID ]; then $ID -un; fi" +PS="/bin/ps -ww" +JID=`$PS -p $$ -o jid=` case ${OSTYPE} in FreeBSD) @@ -278,13 +279,10 @@ $_procname|$_procnamebn|${_procnamebn}:|"(${_procnamebn})"|"[${_procnamebn}]")' fi - _proccheck=' - ps 2>/dev/null -o "pid,jid,command" '"$_psargs"' | + _proccheck="\ + $PS 2>/dev/null -o pid= -o jid= -o command= $_psargs"' | while read _npid _jid '"$_fp_args"'; do - case "$_npid" in - PID) - continue;; - esac; '"$_fp_match"' + '"$_fp_match"' if [ "$JID" -eq "$_jid" ]; then echo -n "$_pref$_npid"; _pref=" "; From owner-p4-projects@FreeBSD.ORG Mon Aug 21 01:43:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 20E4816A4E5; Mon, 21 Aug 2006 01:43:27 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F3AE516A4DA for ; Mon, 21 Aug 2006 01:43:26 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B78D043D46 for ; Mon, 21 Aug 2006 01:43:26 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L1hQ3L003719 for ; Mon, 21 Aug 2006 01:43:26 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L1hPB5003710 for perforce@freebsd.org; Mon, 21 Aug 2006 01:43:25 GMT (envelope-from bushman@freebsd.org) Date: Mon, 21 Aug 2006 01:43:25 GMT Message-Id: <200608210143.k7L1hPB5003710@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 104643 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 01:43:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=104643 Change 104643 by bushman@bushman_nss_ldap_cached_make on 2006/08/21 01:42:34 IFC Affected files ... .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/etc/pccard_ether#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/etc/rc.subr#3 integrate Differences ... ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/etc/pccard_ether#3 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh - # -# $FreeBSD: src/etc/pccard_ether,v 1.49 2006/08/17 03:03:38 brooks Exp $ +# $FreeBSD: src/etc/pccard_ether,v 1.50 2006/08/18 13:19:45 brooks Exp $ # # pccard_ether interfacename [start|stop|restart] # @@ -67,6 +67,8 @@ pccard_ether_start() { + ifexists $ifn || exit 1 + if [ -z "$rc_force" -a -x /usr/bin/grep ]; then if ifconfig $ifn | grep -s '[<,]UP[,>]' > /dev/null 2>&1; then # Interface is already up, so ignore it. ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/etc/rc.subr#3 (text+ko) ==== @@ -1,5 +1,5 @@ # $NetBSD: rc.subr,v 1.66 2006/04/01 10:05:50 he Exp $ -# $FreeBSD: src/etc/rc.subr,v 1.65 2006/08/17 08:04:20 yar Exp $ +# $FreeBSD: src/etc/rc.subr,v 1.67 2006/08/18 13:07:38 yar Exp $ # # Copyright (c) 1997-2004 The NetBSD Foundation, Inc. # All rights reserved. @@ -54,8 +54,9 @@ CMD_OSTYPE="${SYSCTL_N} kern.ostype" OSTYPE=`${CMD_OSTYPE}` ID="/usr/bin/id" -JID=`ps -p $$ -o jid=` IDCMD="if [ -x $ID ]; then $ID -un; fi" +PS="/bin/ps -ww" +JID=`$PS -p $$ -o jid=` case ${OSTYPE} in FreeBSD) @@ -278,13 +279,10 @@ $_procname|$_procnamebn|${_procnamebn}:|"(${_procnamebn})"|"[${_procnamebn}]")' fi - _proccheck=' - ps 2>/dev/null -o "pid,jid,command" '"$_psargs"' | + _proccheck="\ + $PS 2>/dev/null -o pid= -o jid= -o command= $_psargs"' | while read _npid _jid '"$_fp_args"'; do - case "$_npid" in - PID) - continue;; - esac; '"$_fp_match"' + '"$_fp_match"' if [ "$JID" -eq "$_jid" ]; then echo -n "$_pref$_npid"; _pref=" "; From owner-p4-projects@FreeBSD.ORG Mon Aug 21 01:56:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B0F4716A4E1; Mon, 21 Aug 2006 01:56:44 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8D37016A4DD for ; Mon, 21 Aug 2006 01:56:44 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 52CAA43D53 for ; Mon, 21 Aug 2006 01:56:44 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L1uion004369 for ; Mon, 21 Aug 2006 01:56:44 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L1uiKu004366 for perforce@freebsd.org; Mon, 21 Aug 2006 01:56:44 GMT (envelope-from bushman@freebsd.org) Date: Mon, 21 Aug 2006 01:56:44 GMT Message-Id: <200608210156.k7L1uiKu004366@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 104645 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 01:56:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=104645 Change 104645 by bushman@bushman_nss_ldap_cached_make on 2006/08/21 01:56:07 Odd comment removed. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getaddrinfo.c#5 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/libc/net/getaddrinfo.c#5 (text+ko) ==== @@ -236,32 +236,12 @@ struct policyhead *); static int matchlen(struct sockaddr *, struct sockaddr *); -/*static struct addrinfo *getanswer(const querybuf *, int, const char *, int, - const struct addrinfo *, res_state); -#if defined(RESOLVSORT) -static int addr4sort(struct addrinfo *, res_state); -#endif -static int _dns_getaddrinfo(void *, void *, va_list); -static void _sethtent(FILE **); -static void _endhtent(FILE **); -static struct addrinfo *_gethtent(FILE **, const char *, - const struct addrinfo *); -static int _files_getaddrinfo(void *, void *, va_list); -#ifdef YP -static struct addrinfo *_yphostent(char *, const struct addrinfo *); -static int _yp_getaddrinfo(void *, void *, va_list); -#endif*/ #ifdef NS_CACHING static int addrinfo_id_func(char *, size_t *, va_list, void *); static int addrinfo_marshal_func(char *, size_t *, void *, va_list, void *); static int addrinfo_unmarshal_func(char *, size_t, void *, va_list, void *); #endif -/*static int res_queryN(const char *, struct res_target *, res_state); -static int res_searchN(const char *, struct res_target *, res_state); -static int res_querydomainN(const char *, const char *, - struct res_target *, res_state);*/ - /* XXX macros that make external reference is BAD. */ #define GET_AI(ai, afd, addr) \ From owner-p4-projects@FreeBSD.ORG Mon Aug 21 01:57:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7231416A4E6; Mon, 21 Aug 2006 01:57:46 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5102F16A4E2 for ; Mon, 21 Aug 2006 01:57:46 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1746843D46 for ; Mon, 21 Aug 2006 01:57:46 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L1vjqF004426 for ; Mon, 21 Aug 2006 01:57:45 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L1vjkq004423 for perforce@freebsd.org; Mon, 21 Aug 2006 01:57:45 GMT (envelope-from bushman@freebsd.org) Date: Mon, 21 Aug 2006 01:57:45 GMT Message-Id: <200608210157.k7L1vjkq004423@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 104646 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 01:57:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=104646 Change 104646 by bushman@bushman_nss_ldap_cached_make on 2006/08/21 01:57:08 IFC Affected files ... .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/lib/libc/net/getaddrinfo.c#2 integrate Differences ... ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/lib/libc/net/getaddrinfo.c#2 (text+ko) ==== @@ -236,32 +236,12 @@ struct policyhead *); static int matchlen(struct sockaddr *, struct sockaddr *); -/*static struct addrinfo *getanswer(const querybuf *, int, const char *, int, - const struct addrinfo *, res_state); -#if defined(RESOLVSORT) -static int addr4sort(struct addrinfo *, res_state); -#endif -static int _dns_getaddrinfo(void *, void *, va_list); -static void _sethtent(FILE **); -static void _endhtent(FILE **); -static struct addrinfo *_gethtent(FILE **, const char *, - const struct addrinfo *); -static int _files_getaddrinfo(void *, void *, va_list); -#ifdef YP -static struct addrinfo *_yphostent(char *, const struct addrinfo *); -static int _yp_getaddrinfo(void *, void *, va_list); -#endif*/ #ifdef NS_CACHING static int addrinfo_id_func(char *, size_t *, va_list, void *); static int addrinfo_marshal_func(char *, size_t *, void *, va_list, void *); static int addrinfo_unmarshal_func(char *, size_t, void *, va_list, void *); #endif -/*static int res_queryN(const char *, struct res_target *, res_state); -static int res_searchN(const char *, struct res_target *, res_state); -static int res_querydomainN(const char *, const char *, - struct res_target *, res_state);*/ - /* XXX macros that make external reference is BAD. */ #define GET_AI(ai, afd, addr) \ From owner-p4-projects@FreeBSD.ORG Mon Aug 21 02:10:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 452A916A4DE; Mon, 21 Aug 2006 02:10:02 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 20E6A16A4DA for ; Mon, 21 Aug 2006 02:10:02 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B4A4743D45 for ; Mon, 21 Aug 2006 02:10:01 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L2A1u1006240 for ; Mon, 21 Aug 2006 02:10:01 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L2A10d006237 for perforce@freebsd.org; Mon, 21 Aug 2006 02:10:01 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 02:10:01 GMT Message-Id: <200608210210.k7L2A10d006237@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104647 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 02:10:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=104647 Change 104647 by cdjones@cdjones-impulse on 2006/08/21 02:09:21 Reduce spamminess, get rid of unused code. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_hier.c#18 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_hier.c#18 (text+ko) ==== @@ -177,7 +177,7 @@ static int forward_wakeup(int cpunum); #endif -static uint32_t total_jail_sched_shares; +static uint32_t total_cpu_sched_shares; static u_int total_est_cpu; extern struct mtx allprison_mtx; extern int prisoncount; @@ -572,9 +572,7 @@ { int nowake; struct prison *pr; - u_int32_t nShares = 0; - u_int nCpu = 0; - unsigned int counter = 0; + u_int32_t shares = 0; for (;;) { /* @@ -587,16 +585,11 @@ * when jail CPU shares are added / changed, rather than * doing it every second. */ - nShares = sched_unjailedProcessShares; - nCpu = 0; + shares = sched_unjailedProcessShares; LIST_FOREACH(pr, &allprison, pr_list) { - nShares += pr->pr_sched_shares; - nCpu += pr->pr_estcpu; + shares += pr->pr_sched_shares; } - if (0 == (counter % 10)) - printf("schedcpu_thread: %d CPU shares total, %d / %d CPU est. usage\n", - nShares, nCpu, total_est_cpu); - total_jail_sched_shares = nShares; + total_cpu_sched_shares = shares; counter++; schedcpu(); @@ -657,7 +650,7 @@ */ register unsigned int np = newpriority; register unsigned int skew; - skew = pr->pr_estcpu * total_jail_sched_shares; + skew = pr->pr_estcpu * total_cpu_sched_shares; skew /= max(total_est_cpu, 1) * max(pr->pr_sched_shares, 1); if (skew > 0) { /* wait your turn until your cpu usage's proportionate */ @@ -666,24 +659,10 @@ newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), PRI_MAX_TIMESHARE); } -/* - a = skew; - skew *= pr->pr_sched_shares; - b = skew; - skew *= pr->pr_estcpu; - c = skew; */ - /* avoid divide-by-zero hazards */ -/* skew /= max(total_jail_sched_shares, 1); - d = skew; - skew /= max(total_est_cpu, 1); - e = skew; -*/ - -/* newpriority += skew; */ printf("skew KSE %p (%d / %d cpu, %d / %d shares) from %d to %d\n", &kg, pr->pr_estcpu, total_est_cpu, pr->pr_sched_shares, - total_jail_sched_shares, + total_cpu_sched_shares, np, newpriority); } kg->kg_user_pri = newpriority; From owner-p4-projects@FreeBSD.ORG Mon Aug 21 02:25:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8A96F16A4E6; Mon, 21 Aug 2006 02:25:23 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4967516A4DF for ; Mon, 21 Aug 2006 02:25:23 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6261843D46 for ; Mon, 21 Aug 2006 02:25:21 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L2PLP2007032 for ; Mon, 21 Aug 2006 02:25:21 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L2PLRs007029 for perforce@freebsd.org; Mon, 21 Aug 2006 02:25:21 GMT (envelope-from bushman@freebsd.org) Date: Mon, 21 Aug 2006 02:25:21 GMT Message-Id: <200608210225.k7L2PLRs007029@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 104648 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 02:25:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=104648 Change 104648 by bushman@bushman_nss_ldap_cached_make on 2006/08/21 02:24:27 Omit parsing errors in nss_ldap.conf Affected files ... .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/lib/nss_ldap/ldapconf.c#2 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/lib/nss_ldap/ldapconf.c#2 (text+ko) ==== @@ -599,7 +599,12 @@ break; } +#if 0 res = NSS_LDAP_PARSE_ERROR; +#else + /* ignore parsing errors in this version */ + continue; +#endif } fclose(fin); From owner-p4-projects@FreeBSD.ORG Mon Aug 21 02:32:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2A73316A4DF; Mon, 21 Aug 2006 02:32:32 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C18C516A4DA for ; Mon, 21 Aug 2006 02:32:31 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 69A4F43D45 for ; Mon, 21 Aug 2006 02:32:31 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L2WVQG007430 for ; Mon, 21 Aug 2006 02:32:31 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L2WUAO007427 for perforce@freebsd.org; Mon, 21 Aug 2006 02:32:30 GMT (envelope-from bushman@freebsd.org) Date: Mon, 21 Aug 2006 02:32:30 GMT Message-Id: <200608210232.k7L2WUAO007427@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 104649 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 02:32:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=104649 Change 104649 by bushman@bushman_nss_ldap_cached_make on 2006/08/21 02:31:48 - Precaching implemented - Malloc style and some issues fixed - DUPLICATE_RUNTIME_ENV condition and duplicate_runtime_env function added Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/Makefile#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.h#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/Makefile.inc#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.h#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/hosts.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/hosts.h#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/net.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/net.h#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.h#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/proto.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/proto.h#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/rpc.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/rpc.h#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/services.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/services.h#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cached.8#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cached.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cached.conf.5#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cachedcli.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cachedcli.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cachelib.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cachelib.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cacheplcs.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/cacheplcs.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/config.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/config.h#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/debug.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/debug.h#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/hashtable.h#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/log.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/log.h#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/mp_rs_query.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/mp_rs_query.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/mp_ws_query.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/mp_ws_query.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/parser.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/parser.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/protocol.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/protocol.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/query.c#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/query.h#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/singletons.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/singletons.h#3 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/Makefile#4 (text) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.c#6 (text) ==== @@ -33,8 +33,14 @@ #include #include #include +#include "cachelib.h" +#include "config.h" +#include "debug.h" +#include "log.h" +#include "singletons.h" #include "agent.h" -#include "debug.h" + +#define EIDSTR_SIZE (sizeof(uid_t) + sizeof(gid_t)) const ns_dtab emptydtab[] = { { NULL, NULL, NULL } @@ -82,7 +88,8 @@ if (rv == NS_RETURN) { *bufsize = size; if (*bufsize <= AGENT_BUFFER_STORAGE_MAX) { - *buffer = (char *)realloc(*buffer, *bufsize); + free(*buffer); + *buffer = malloc(*bufsize); if (*buffer == NULL) return (NS_UNAVAIL); @@ -96,6 +103,52 @@ free(*buffer); *buffer = NULL; *bufsize = 0; + } else + *bufsize = size; + + va_end(ap); + return (rv); +} + +int +agent_id_args(char **buffer, size_t *bufsize, + agent_id_func id_func, void *cache_mdata, ...) +{ + va_list ap; + size_t size; + int rv; + + va_start(ap, cache_mdata); + if (*buffer == NULL) { + *buffer = malloc(AGENT_KEY_BUFFER_STORAGE_INITIAL); + if (*buffer == NULL) + return (NS_UNAVAIL); + *bufsize = AGENT_KEY_BUFFER_STORAGE_INITIAL; + } + + size = *bufsize - EIDSTR_SIZE; + rv = id_func(*buffer + EIDSTR_SIZE, &size, ap, cache_mdata); + if (rv == NS_RETURN) { + *bufsize = size; + if (*bufsize <= AGENT_KEY_BUFFER_STORAGE_MAX) { + free(*buffer); + *buffer = malloc(*bufsize); + if (*buffer == NULL) + return (NS_UNAVAIL); + + size = *bufsize - EIDSTR_SIZE; + rv = id_func(*buffer + EIDSTR_SIZE, &size, ap, + cache_mdata); + } + } + + if (rv != NS_SUCCESS) { + free(*buffer); + *buffer = NULL; + *bufsize = 0; + } else { + *bufsize = size + EIDSTR_SIZE; + memset(*buffer, 0, EIDSTR_SIZE); } va_end(ap); @@ -108,7 +161,7 @@ struct agent_table *retval; TRACE_IN(init_agent_table); - retval = (struct agent_table *)malloc(sizeof(struct agent_table)); + retval = malloc(sizeof(struct agent_table)); if (retval == NULL) { TRACE_OUT(init_agent_table); return (NULL); @@ -134,8 +187,7 @@ } new_agents_num = at->agents_num + 1; - new_agents = (struct agent **)malloc(sizeof(struct agent *) * - new_agents_num); + new_agents = malloc(sizeof(struct agent *) * new_agents_num); if (new_agents == NULL) { TRACE_OUT(register_agent); return (-1); @@ -187,3 +239,120 @@ free(at); TRACE_OUT(destroy_agent_table); } + +int +agent_precache_results(struct configuration_entry *config_entry, + struct multipart_agent *mp_agent) +{ + cache_mp_write_session ws; + char *buffer, *keybuf, *dec_name, *en_bkp; + size_t buffer_size, keybuf_size; + void *mdata, *keygen_mdata, *retval; + cache_entry c_entry; + int res, res2; + + TRACE_IN(agent_precache_results); + + if (mp_agent->mp_keygen_func == NULL) { + LOG_ERR_2("agent_precache_results", + "'%s' does not support precaching", config_entry->name); + TRACE_OUT(agent_precache_results); + return (NS_UNAVAIL); + } + + configuration_lock_rdlock(s_configuration); + c_entry = find_cache_entry(s_cache, + config_entry->mp_cache_params.entry_name); + configuration_unlock(s_configuration); + + configuration_lock_entry(config_entry, CELT_MULTIPART); + if (c_entry == INVALID_CACHE) { + dec_name = strdup(config_entry->mp_cache_params.entry_name); + if (dec_name == NULL) { + configuration_unlock_entry(config_entry, CELT_MULTIPART); + TRACE_OUT(agent_precache_results); + return (NS_UNAVAIL); + } + + en_bkp = config_entry->mp_cache_params.entry_name; + config_entry->mp_cache_params.entry_name = dec_name; + register_cache_entry(s_cache, (struct cache_entry_params *) + &config_entry->mp_cache_params); + config_entry->mp_cache_params.entry_name = en_bkp; + + configuration_lock_rdlock(s_configuration); + c_entry = find_cache_entry(s_cache, + config_entry->mp_cache_params.entry_name); + configuration_unlock(s_configuration); + + if (c_entry == INVALID_CACHE) { + configuration_unlock_entry(config_entry, CELT_MULTIPART); + LOG_ERR_2("agent_precache_results", + "can't register multipart cache entry'%s'", + config_entry->name); + TRACE_OUT(agent_precache_results); + return (NS_UNAVAIL); + } + configuration_entry_add_mp_cache_entry(config_entry, + c_entry); + } + + ws = open_cache_mp_write_session(c_entry); + configuration_unlock_entry(config_entry, CELT_MULTIPART); + + keygen_mdata = NULL; + mdata = mp_agent->mp_init_func(); + if (ws != NULL) { + do { + buffer = NULL; + + res = mp_agent->mp_lookup_func(&buffer, &buffer_size, &retval, + mdata); + if ((res & NS_TERMINATE) && (buffer != NULL)) { + configuration_lock_entry(config_entry, CELT_MULTIPART); + if (cache_mp_write(ws, buffer, buffer_size) != 0) { + abandon_cache_mp_write_session(ws); + ws = NULL; + } + configuration_unlock_entry(config_entry, + CELT_MULTIPART); + + configuration_lock_entry(config_entry, CELT_POSITIVE); + + keybuf = NULL; + keybuf_size = 0; + while ((res2 = mp_agent->mp_keygen_func(&keybuf, + &keybuf_size, retval, &keygen_mdata)) == + NS_SUCCESS) { + if (keybuf == NULL) + break; + + cache_write(config_entry->positive_cache_entry, + keybuf, keybuf_size, buffer, + buffer_size); + + free(keybuf); + keybuf = NULL; + keybuf_size = 0; + } + configuration_unlock_entry(config_entry, CELT_POSITIVE); + + free(buffer); + buffer = NULL; + } else { + configuration_lock_entry(config_entry, + CELT_MULTIPART); + close_cache_mp_write_session(ws); + ws = NULL; + configuration_unlock_entry(config_entry, + CELT_MULTIPART); + + buffer = NULL; + } + } while ((res & NS_TERMINATE) && (ws != NULL)); + mp_agent->mp_keygen_func(NULL, NULL, NULL, &keygen_mdata); + } + + TRACE_OUT(agent_precache_results); + return (NS_SUCCESS); +} ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agent.h#6 (text) ==== @@ -76,6 +76,7 @@ #define AGENT_DECLARE_BUFFER_TLS_HANDLING(name) \ struct name##_state { \ + struct name inst; \ char *buffer; \ size_t bufsize; \ }; \ @@ -94,6 +95,12 @@ AGENT_BUFFER_STORAGE_MAX = 1 << 20, /* 1 MByte */ }; +enum agent_key_buffer_constants +{ + AGENT_KEY_BUFFER_STORAGE_INITIAL = 1 << 8, + AGENT_KEY_BUFFER_STORAGE_MAX = 1 << 20, +}; + #define AGENT_BUFFER_TLS_HANDLING_INIT(st) \ { \ if (st->buffer == NULL) { \ @@ -125,9 +132,11 @@ }; typedef int (*agent_marshal_func)(char *, size_t *, void *, va_list, void *); +typedef int (*agent_id_func)(char *, size_t *, va_list, void *); typedef int (*agent_lookup_func)(const char *, size_t, char **, size_t *); typedef void *(*agent_mp_init_func)(); -typedef int (*agent_mp_lookup_func)(char **, size_t *, void *); +typedef int (*agent_mp_lookup_func)(char **, size_t *, void *, void *); +typedef int (*agent_mp_keygen_func)(char **, size_t *, void *, void *); typedef void (*agent_mp_destroy_func)(void *); struct agent { @@ -145,6 +154,7 @@ agent_mp_init_func mp_init_func; agent_mp_lookup_func mp_lookup_func; + agent_mp_keygen_func mp_keygen_func; agent_mp_destroy_func mp_destroy_func; }; @@ -157,10 +167,15 @@ extern int agent_marshal_results(char **, size_t *, agent_marshal_func, void *, void *, ...); +extern int agent_id_args(char **, size_t *, agent_id_func, + void *, ...); extern struct agent_table *init_agent_table(); extern int register_agent(struct agent_table *, struct agent *); extern struct agent *find_agent(struct agent_table *, const char *, enum agent_type); extern void destroy_agent_table(struct agent_table *); + +extern int agent_precache_results(struct configuration_entry *, + struct multipart_agent *); #endif ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/Makefile.inc#5 (text) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.c#6 (text) ==== @@ -40,20 +40,30 @@ #include #include #include +#include "../debug.h" +#include "../cachelib.h" +#include "../config.h" +#include "../debug.h" +#include "../log.h" +#include "../singletons.h" #include "../agent.h" -#include "../debug.h" #include "group.h" +#define GROUP_KEYGEN_BYNAME (0) +#define GROUP_KEYGEN_BYGID (1) +#define GROUP_KEYGEN_END (2) + static const ns_src defaultsrc[] = { { NSSRC_COMPAT, NS_SUCCESS }, { NULL, 0 } }; - +static int group_id_func(char *, size_t *, va_list, void *); static int group_marshal_func(char *, size_t *, void *, va_list, void *); static int group_lookup_func(const char *, size_t, char **, size_t *); static void *group_mp_init_func(); -static int group_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata); +static int group_mp_lookup_func(char **, size_t *, void *, void *); +static int group_mp_keygen_func(char **, size_t *, void *, void *); static void group_mp_destroy_func(void *mdata); AGENT_DECLARE_BUFFER_TLS_HANDLING(group); @@ -67,6 +77,58 @@ #endif static int +group_id_func(char *buffer, size_t *buffer_size, va_list ap, void *cache_mdata) +{ + char *name; + gid_t gid; + + size_t desired_size, size; + int res = NS_UNAVAIL; + enum nss_lookup_type lookup_type; + + + lookup_type = (enum nss_lookup_type)cache_mdata; + switch (lookup_type) { + case nss_lt_name: + name = va_arg(ap, char *); + size = strlen(name); + desired_size = sizeof(enum nss_lookup_type) + size + 1; + if (desired_size > *buffer_size) { + res = NS_RETURN; + goto fin; + } + + memcpy(buffer, &lookup_type, sizeof(enum nss_lookup_type)); + memcpy(buffer + sizeof(enum nss_lookup_type), name, size + 1); + + res = NS_SUCCESS; + break; + case nss_lt_id: + gid = va_arg(ap, gid_t); + desired_size = sizeof(enum nss_lookup_type) + sizeof(gid_t); + if (desired_size > *buffer_size) { + res = NS_RETURN; + goto fin; + } + + memcpy(buffer, &lookup_type, sizeof(enum nss_lookup_type)); + memcpy(buffer + sizeof(enum nss_lookup_type), &gid, + sizeof(gid_t)); + + res = NS_SUCCESS; + break; + default: + /* should be unreachable */ + return (NS_UNAVAIL); + } + +fin: + *buffer_size = desired_size; + return (res); +} + + +static int group_marshal_func(char *buffer, size_t *buffer_size, void *retval, va_list ap, void *cache_mdata) { @@ -122,7 +184,7 @@ } memcpy(&new_grp, grp, sizeof(struct group)); - //memset(buffer, 0, desired_size); + memset(buffer, 0, desired_size); *buffer_size = desired_size; p = buffer + sizeof(struct group) + sizeof(char *); @@ -166,7 +228,7 @@ size_t *out_size) { struct group_state *st; - struct group grp, *retval; + struct group *retval; enum nss_lookup_type lookup_type; char *name; gid_t gid; @@ -187,12 +249,11 @@ switch (lookup_type) { case nss_lt_name: size = key_size - sizeof(enum nss_lookup_type) + 1; - name = (char *)malloc(size); + name = malloc(size); if (name == NULL) { TRACE_OUT(group_lookup_func); return (NS_UNAVAIL); } - //memset(name, 0, size); name[size - 1] = '\0'; memcpy(name, key + sizeof(enum nss_lookup_type), size - 1); break; @@ -223,7 +284,7 @@ do { result = nsdispatch(&retval, emptydtab, NSDB_GROUP, "getgrnam_r", defaultsrc, name, - &grp, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); @@ -237,7 +298,7 @@ if (result == NS_SUCCESS) result = agent_marshal_results(out_buffer, out_size, group_marshal_func, (void *)nss_lt_name, - retval, name, &grp, + retval, name, &st->inst, st->buffer, st->bufsize, &error); break; @@ -245,7 +306,7 @@ do { result = nsdispatch(&retval, emptydtab, NSDB_GROUP, "getgrgid_r", defaultsrc, gid, - &grp, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); @@ -260,7 +321,7 @@ result = agent_marshal_results(out_buffer, out_size, group_marshal_func, (void *)nss_lt_id, retval, gid, - &grp, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); break; default: /* SHOULD NOT BE REACHED */ @@ -283,10 +344,10 @@ } static int -group_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata) +group_mp_lookup_func(char **out_buffer, size_t *out_size, void *retval, + void *mdata) { struct group_state *st; - struct group grp, *retval; int result, error; TRACE_IN(group_mp_lookup_func); @@ -297,8 +358,8 @@ return (NS_UNAVAIL); do { - result = nsdispatch(&retval, emptydtab, NSDB_GROUP, - "getgrent_r", defaultsrc, &grp, st->buffer, + result = nsdispatch(retval, emptydtab, NSDB_GROUP, + "getgrent_r", defaultsrc, &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { @@ -311,14 +372,59 @@ if (result == NS_SUCCESS) { result = agent_marshal_results(out_buffer, out_size, group_marshal_func, - (void *)nss_lt_all, retval, &grp, - st->buffer, st->bufsize, &error); + (void *)nss_lt_all, *((void **)retval), + &st->inst, st->buffer, st->bufsize, &error); } TRACE_OUT(group_mp_lookup_func); return (result); } +int +group_mp_keygen_func(char **out_buffer, size_t *out_size, + void *result, void *mdata) +{ + struct group *grp; + int rv, *conv_type; + + TRACE_IN(group_mp_keygen_func); + grp = (struct group *)result; + conv_type = *((int **)mdata); + + if (grp == NULL) { + free(conv_type); + *((int **)mdata) = NULL; + return (NS_UNAVAIL); + } + + if (conv_type == NULL) { + conv_type = malloc(sizeof(int)); + *conv_type = GROUP_KEYGEN_BYNAME; + *((int **)mdata) = conv_type; + } + + switch (*conv_type) { + case GROUP_KEYGEN_BYNAME: + rv = agent_id_args(out_buffer, out_size, group_id_func, + (void *)nss_lt_name, grp->gr_name); + *conv_type = GROUP_KEYGEN_BYGID; + break; + case GROUP_KEYGEN_BYGID: + rv = agent_id_args(out_buffer, out_size, group_id_func, + (void *)nss_lt_id, grp->gr_gid); + *conv_type = GROUP_KEYGEN_END; + break; + case GROUP_KEYGEN_END: + default: + *conv_type = GROUP_KEYGEN_BYNAME; + rv = NS_NOTFOUND; + break; + } + + TRACE_OUT(group_mp_keygen_func); + return (rv); +} + static void group_mp_destroy_func(void *mdata) { @@ -333,7 +439,7 @@ struct common_agent *retval; TRACE_IN(init_group_agent); - retval = (struct common_agent *)malloc(sizeof(struct common_agent)); + retval = malloc(sizeof(struct common_agent)); if (retval == NULL) { TRACE_OUT(init_group_agent); return (NULL); @@ -360,8 +466,7 @@ struct multipart_agent *retval; TRACE_IN(init_group_mp_agent); - retval = (struct multipart_agent *)malloc( - sizeof(struct multipart_agent)); + retval = malloc(sizeof(struct multipart_agent)); if (retval == NULL) { TRACE_OUT(init_group_mp_agent); return (NULL); @@ -377,6 +482,7 @@ retval->parent.type = MULTIPART_AGENT; retval->mp_init_func = group_mp_init_func; retval->mp_lookup_func = group_mp_lookup_func; + retval->mp_keygen_func = group_mp_keygen_func; retval->mp_destroy_func = group_mp_destroy_func; TRACE_OUT(init_group_mp_agent); ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/group.h#5 (text) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/hosts.c#5 (text+ko) ==== @@ -45,8 +45,13 @@ #include #include #include +#include "../debug.h" +#include "../cachelib.h" +#include "../config.h" +#include "../debug.h" +#include "../log.h" +#include "../singletons.h" #include "../agent.h" -#include "../debug.h" #include "hosts.h" static const ns_src defaultsrc[] = { @@ -133,7 +138,7 @@ } memcpy(&new_ht, ht, sizeof(struct hostent)); - //memset(buffer, 0, desired_size); + memset(buffer, 0, desired_size); *buffer_size = desired_size; p = buffer + sizeof(struct hostent) + sizeof(char *); @@ -205,7 +210,7 @@ return (NS_RETURN); } - //memset(buffer, 0, desired_size); + memset(buffer, 0, desired_size); p = buffer; memcpy(p, &ai_size, sizeof(size_t)); @@ -301,12 +306,11 @@ key_size -= sizeof(int); size = key_size + 1; - str = (char *)malloc(size); + str = malloc(size); if (str == NULL) { TRACE_OUT(hosts_lookup_func); return (NS_UNAVAIL); } - //memset(str, 0, size); str[size - 1] = '\0'; memcpy(str, key, key_size); @@ -339,12 +343,11 @@ switch (lookup_type) { case nss_lt_name: size = key_size + 1; - str = (char *)malloc(size); + str = malloc(size); if (str == NULL) { TRACE_OUT(hosts_lookup_func); return (NS_UNAVAIL); } - //memset(str, 0, size); str[size - 1] = '\0'; memcpy(str, key, key_size); break; @@ -447,7 +450,7 @@ struct common_agent *retval; TRACE_IN(init_hosts_agent); - retval = (struct common_agent *)malloc(sizeof(struct common_agent)); + retval = malloc(sizeof(struct common_agent)); if (retval == NULL) { TRACE_OUT(init_hosts_agent); return (NULL); ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/hosts.h#4 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/net.c#5 (text+ko) ==== @@ -44,8 +44,13 @@ #include #include #include +#include "../debug.h" +#include "../cachelib.h" +#include "../config.h" +#include "../debug.h" +#include "../log.h" +#include "../singletons.h" #include "../agent.h" -#include "../debug.h" #include "net.h" static const ns_src defaultsrc[] = { @@ -126,7 +131,7 @@ memcpy(&new_ne, ne, sizeof(struct netent)); *buffer_size = desired_size; - //memset(buffer, 0, desired_size); + memset(buffer, 0, desired_size); p = buffer + sizeof(struct netent) + sizeof(char *); memcpy(buffer + sizeof(struct netent), &p, sizeof(char *)); p = (char *)_ALIGN(p); @@ -183,12 +188,11 @@ switch (lookup_type) { case nss_lt_name: size = key_size - sizeof(enum nss_lookup_type) + 1; - name = (char *)malloc(size); + name = malloc(size); if (name == NULL) { TRACE_OUT(networks_lookup_func); return (NS_UNAVAIL); } - //memset(name, 0, size); name[size - 1] = '\0'; memcpy(name, key + sizeof(enum nss_lookup_type), size - 1); break; @@ -277,7 +281,7 @@ struct common_agent *retval; TRACE_IN(init_networks_agent); - retval = (struct common_agent *)malloc(sizeof(struct common_agent)); + retval = malloc(sizeof(struct common_agent)); if (retval == NULL) { TRACE_OUT(init_networks_agent); return (NULL); ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/net.h#4 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/usr.sbin/cached/agents/passwd.c#6 (text) ==== @@ -38,25 +38,84 @@ #include #include #include +#include "../debug.h" +#include "../cachelib.h" +#include "../config.h" +#include "../debug.h" +#include "../log.h" +#include "../singletons.h" #include "../agent.h" -#include "../debug.h" #include "passwd.h" +#define PASSWD_KEYGEN_BYNAME (0) +#define PASSWD_KEYGEN_BYUID (1) +#define PASSWD_KEYGEN_END (2) + static const ns_src defaultsrc[] = { { NSSRC_COMPAT, NS_SUCCESS }, { NULL, 0 } }; - +static int passwd_id_func(char *, size_t *, va_list, void *); static int passwd_marshal_func(char *, size_t *, void *, va_list, void *); static int passwd_lookup_func(const char *, size_t, char **, size_t *); static void *passwd_mp_init_func(); -static int passwd_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata); -static void passwd_mp_destroy_func(void *mdata); +static int passwd_mp_lookup_func(char **, size_t *, void *, void *); +static int passwd_mp_keygen_func(char **, size_t *, void *, void *); +static void passwd_mp_destroy_func(void *); AGENT_DECLARE_BUFFER_TLS_HANDLING(passwd); static int +passwd_id_func(char *buffer, size_t *buffer_size, va_list ap, void *cache_mdata) +{ + char *name; + uid_t uid; + size_t size, desired_size; + int res = NS_UNAVAIL; + enum nss_lookup_type lookup_type; + + lookup_type = (enum nss_lookup_type)cache_mdata; + switch (lookup_type) { + case nss_lt_name: + name = va_arg(ap, char *); + size = strlen(name); + desired_size = sizeof(enum nss_lookup_type) + size + 1; + if (desired_size > *buffer_size) { + res = NS_RETURN; + goto fin; + } + + memcpy(buffer, &lookup_type, sizeof(enum nss_lookup_type)); + memcpy(buffer + sizeof(enum nss_lookup_type), name, size + 1); + + res = NS_SUCCESS; + break; + case nss_lt_id: + uid = va_arg(ap, uid_t); + desired_size = sizeof(enum nss_lookup_type) + sizeof(uid_t); + if (desired_size > *buffer_size) { + res = NS_RETURN; + goto fin; + } + + memcpy(buffer, &lookup_type, sizeof(enum nss_lookup_type)); + memcpy(buffer + sizeof(enum nss_lookup_type), &uid, + sizeof(uid_t)); + + res = NS_SUCCESS; + break; + default: + /* should be unreachable */ + return (NS_UNAVAIL); + } + +fin: + *buffer_size = desired_size; + return (res); +} + +static int passwd_marshal_func(char *buffer, size_t *buffer_size, void *retval, va_list ap, void *cache_mdata) { @@ -108,7 +167,7 @@ } memcpy(&new_pwd, pwd, sizeof(struct passwd)); - //memset(buffer, 0, desired_size); + memset(buffer, 0, desired_size); *buffer_size = desired_size; p = buffer + sizeof(struct passwd) + sizeof(char *); @@ -165,7 +224,7 @@ size_t *out_size) { struct passwd_state *st; - struct passwd pwd, *retval; + struct passwd *retval; enum nss_lookup_type lookup_type; char *login; uid_t uid; @@ -186,12 +245,11 @@ switch (lookup_type) { case nss_lt_name: size = key_size - sizeof(enum nss_lookup_type) + 1; - login = (char *)malloc(size); + login = malloc(size); if (login == NULL) { TRACE_OUT(passwd_lookup_func); return (NS_UNAVAIL); } - //memset(login, 0, size); login[size - 1] ='\0'; memcpy(login, key + sizeof(enum nss_lookup_type), size - 1); break; @@ -222,7 +280,7 @@ do { result = nsdispatch(&retval, emptydtab, NSDB_PASSWD, "getpwnam_r", defaultsrc, login, - &pwd, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); @@ -236,7 +294,7 @@ if (result == NS_SUCCESS) result = agent_marshal_results(out_buffer, out_size, passwd_marshal_func, (void *)nss_lt_name, - retval, login, &pwd, + retval, login, &st->inst, st->buffer, st->bufsize, &error); break; @@ -244,7 +302,7 @@ do { result = nsdispatch(&retval, emptydtab, NSDB_PASSWD, "getpwuid_r", defaultsrc, uid, - &pwd, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); @@ -259,7 +317,7 @@ result = agent_marshal_results(out_buffer, out_size, passwd_marshal_func, (void *)nss_lt_id, retval, uid, - &pwd, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); break; default: /* SHOULD NOT BE REACHED */ @@ -282,10 +340,10 @@ } static int -passwd_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata) +passwd_mp_lookup_func(char **out_buffer, size_t *out_size, void *retval, + void *mdata) { struct passwd_state *st; - struct passwd pwd, *retval; int result, error; TRACE_IN(passwd_mp_lookup_func); @@ -296,8 +354,8 @@ return (NS_UNAVAIL); do { - result = nsdispatch(&retval, emptydtab, NSDB_PASSWD, - "getpwent_r", defaultsrc, &pwd, st->buffer, + result = nsdispatch(retval, emptydtab, NSDB_PASSWD, + "getpwent_r", defaultsrc, &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { @@ -309,15 +367,60 @@ if (result == NS_SUCCESS) { result = agent_marshal_results(out_buffer, - out_size, passwd_marshal_func, - (void *)nss_lt_all, retval, &pwd, - st->buffer, st->bufsize, &error); + out_size, passwd_marshal_func, (void *)nss_lt_all, + *((void **)retval), &st->inst, st->buffer, + st->bufsize, &error); } TRACE_OUT(passwd_mp_lookup_func); return (result); } +static int +passwd_mp_keygen_func(char **out_buffer, size_t *out_size, + void *result, void *mdata) +{ + struct passwd *pwd; + int rv, *conv_type; + + TRACE_IN(passwd_mp_keygen_type); + pwd = (struct passwd *)result; + conv_type = *((int **)mdata); + + if (pwd == NULL) { + free(conv_type); + *((int **)mdata) = NULL; + return (NS_UNAVAIL); + } + + if (conv_type == NULL) { + conv_type = malloc(sizeof(int)); + *conv_type = PASSWD_KEYGEN_BYNAME; + *((int **)mdata) = conv_type; + } + + switch (*conv_type) { + case PASSWD_KEYGEN_BYNAME: + rv = agent_id_args(out_buffer, out_size, passwd_id_func, + (void *)nss_lt_name, pwd->pw_name); + *conv_type = PASSWD_KEYGEN_BYUID; + break; + case PASSWD_KEYGEN_BYUID: + rv = agent_id_args(out_buffer, out_size, passwd_id_func, + (void *)nss_lt_id, pwd->pw_uid); + *conv_type = PASSWD_KEYGEN_END; + break; + case PASSWD_KEYGEN_END: + default: + *conv_type = PASSWD_KEYGEN_BYNAME; + rv = NS_NOTFOUND; + break; + } + + TRACE_OUT(passwd_mp_keygen_type); + return (rv); +} + static void >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Aug 21 02:34:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 30B7816A4DF; Mon, 21 Aug 2006 02:34:36 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E58A116A4DD for ; Mon, 21 Aug 2006 02:34:35 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4864D43D46 for ; Mon, 21 Aug 2006 02:34:35 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L2YZnL007612 for ; Mon, 21 Aug 2006 02:34:35 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L2YYSP007609 for perforce@freebsd.org; Mon, 21 Aug 2006 02:34:34 GMT (envelope-from bushman@freebsd.org) Date: Mon, 21 Aug 2006 02:34:34 GMT Message-Id: <200608210234.k7L2YYSP007609@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 104650 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 02:34:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=104650 Change 104650 by bushman@bushman_nss_ldap_cached_make on 2006/08/21 02:33:35 IFC Affected files ... .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/Makefile#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agent.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agent.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/Makefile.inc#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/group.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/group.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/hosts.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/hosts.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/net.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/net.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/passwd.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/passwd.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/proto.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/proto.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/rpc.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/rpc.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/services.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/services.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/cached.8#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/cached.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/cached.conf.5#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/cachedcli.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/cachedcli.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/cachelib.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/cachelib.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/cacheplcs.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/cacheplcs.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/config.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/config.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/debug.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/debug.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/hashtable.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/log.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/log.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/mp_rs_query.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/mp_rs_query.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/mp_ws_query.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/mp_ws_query.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/parser.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/parser.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/protocol.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/protocol.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/query.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/query.h#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/singletons.c#3 integrate .. //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/singletons.h#3 integrate Differences ... ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/Makefile#3 (text) ==== ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agent.c#3 (text) ==== @@ -33,8 +33,14 @@ #include #include #include +#include "cachelib.h" +#include "config.h" +#include "debug.h" +#include "log.h" +#include "singletons.h" #include "agent.h" -#include "debug.h" + +#define EIDSTR_SIZE (sizeof(uid_t) + sizeof(gid_t)) const ns_dtab emptydtab[] = { { NULL, NULL, NULL } @@ -82,7 +88,8 @@ if (rv == NS_RETURN) { *bufsize = size; if (*bufsize <= AGENT_BUFFER_STORAGE_MAX) { - *buffer = (char *)realloc(*buffer, *bufsize); + free(*buffer); + *buffer = malloc(*bufsize); if (*buffer == NULL) return (NS_UNAVAIL); @@ -96,6 +103,52 @@ free(*buffer); *buffer = NULL; *bufsize = 0; + } else + *bufsize = size; + + va_end(ap); + return (rv); +} + +int +agent_id_args(char **buffer, size_t *bufsize, + agent_id_func id_func, void *cache_mdata, ...) +{ + va_list ap; + size_t size; + int rv; + + va_start(ap, cache_mdata); + if (*buffer == NULL) { + *buffer = malloc(AGENT_KEY_BUFFER_STORAGE_INITIAL); + if (*buffer == NULL) + return (NS_UNAVAIL); + *bufsize = AGENT_KEY_BUFFER_STORAGE_INITIAL; + } + + size = *bufsize - EIDSTR_SIZE; + rv = id_func(*buffer + EIDSTR_SIZE, &size, ap, cache_mdata); + if (rv == NS_RETURN) { + *bufsize = size; + if (*bufsize <= AGENT_KEY_BUFFER_STORAGE_MAX) { + free(*buffer); + *buffer = malloc(*bufsize); + if (*buffer == NULL) + return (NS_UNAVAIL); + + size = *bufsize - EIDSTR_SIZE; + rv = id_func(*buffer + EIDSTR_SIZE, &size, ap, + cache_mdata); + } + } + + if (rv != NS_SUCCESS) { + free(*buffer); + *buffer = NULL; + *bufsize = 0; + } else { + *bufsize = size + EIDSTR_SIZE; + memset(*buffer, 0, EIDSTR_SIZE); } va_end(ap); @@ -108,7 +161,7 @@ struct agent_table *retval; TRACE_IN(init_agent_table); - retval = (struct agent_table *)malloc(sizeof(struct agent_table)); + retval = malloc(sizeof(struct agent_table)); if (retval == NULL) { TRACE_OUT(init_agent_table); return (NULL); @@ -134,8 +187,7 @@ } new_agents_num = at->agents_num + 1; - new_agents = (struct agent **)malloc(sizeof(struct agent *) * - new_agents_num); + new_agents = malloc(sizeof(struct agent *) * new_agents_num); if (new_agents == NULL) { TRACE_OUT(register_agent); return (-1); @@ -187,3 +239,120 @@ free(at); TRACE_OUT(destroy_agent_table); } + +int +agent_precache_results(struct configuration_entry *config_entry, + struct multipart_agent *mp_agent) +{ + cache_mp_write_session ws; + char *buffer, *keybuf, *dec_name, *en_bkp; + size_t buffer_size, keybuf_size; + void *mdata, *keygen_mdata, *retval; + cache_entry c_entry; + int res, res2; + + TRACE_IN(agent_precache_results); + + if (mp_agent->mp_keygen_func == NULL) { + LOG_ERR_2("agent_precache_results", + "'%s' does not support precaching", config_entry->name); + TRACE_OUT(agent_precache_results); + return (NS_UNAVAIL); + } + + configuration_lock_rdlock(s_configuration); + c_entry = find_cache_entry(s_cache, + config_entry->mp_cache_params.entry_name); + configuration_unlock(s_configuration); + + configuration_lock_entry(config_entry, CELT_MULTIPART); + if (c_entry == INVALID_CACHE) { + dec_name = strdup(config_entry->mp_cache_params.entry_name); + if (dec_name == NULL) { + configuration_unlock_entry(config_entry, CELT_MULTIPART); + TRACE_OUT(agent_precache_results); + return (NS_UNAVAIL); + } + + en_bkp = config_entry->mp_cache_params.entry_name; + config_entry->mp_cache_params.entry_name = dec_name; + register_cache_entry(s_cache, (struct cache_entry_params *) + &config_entry->mp_cache_params); + config_entry->mp_cache_params.entry_name = en_bkp; + + configuration_lock_rdlock(s_configuration); + c_entry = find_cache_entry(s_cache, + config_entry->mp_cache_params.entry_name); + configuration_unlock(s_configuration); + + if (c_entry == INVALID_CACHE) { + configuration_unlock_entry(config_entry, CELT_MULTIPART); + LOG_ERR_2("agent_precache_results", + "can't register multipart cache entry'%s'", + config_entry->name); + TRACE_OUT(agent_precache_results); + return (NS_UNAVAIL); + } + configuration_entry_add_mp_cache_entry(config_entry, + c_entry); + } + + ws = open_cache_mp_write_session(c_entry); + configuration_unlock_entry(config_entry, CELT_MULTIPART); + + keygen_mdata = NULL; + mdata = mp_agent->mp_init_func(); + if (ws != NULL) { + do { + buffer = NULL; + + res = mp_agent->mp_lookup_func(&buffer, &buffer_size, &retval, + mdata); + if ((res & NS_TERMINATE) && (buffer != NULL)) { + configuration_lock_entry(config_entry, CELT_MULTIPART); + if (cache_mp_write(ws, buffer, buffer_size) != 0) { + abandon_cache_mp_write_session(ws); + ws = NULL; + } + configuration_unlock_entry(config_entry, + CELT_MULTIPART); + + configuration_lock_entry(config_entry, CELT_POSITIVE); + + keybuf = NULL; + keybuf_size = 0; + while ((res2 = mp_agent->mp_keygen_func(&keybuf, + &keybuf_size, retval, &keygen_mdata)) == + NS_SUCCESS) { + if (keybuf == NULL) + break; + + cache_write(config_entry->positive_cache_entry, + keybuf, keybuf_size, buffer, + buffer_size); + + free(keybuf); + keybuf = NULL; + keybuf_size = 0; + } + configuration_unlock_entry(config_entry, CELT_POSITIVE); + + free(buffer); + buffer = NULL; + } else { + configuration_lock_entry(config_entry, + CELT_MULTIPART); + close_cache_mp_write_session(ws); + ws = NULL; + configuration_unlock_entry(config_entry, + CELT_MULTIPART); + + buffer = NULL; + } + } while ((res & NS_TERMINATE) && (ws != NULL)); + mp_agent->mp_keygen_func(NULL, NULL, NULL, &keygen_mdata); + } + + TRACE_OUT(agent_precache_results); + return (NS_SUCCESS); +} ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agent.h#3 (text) ==== @@ -76,6 +76,7 @@ #define AGENT_DECLARE_BUFFER_TLS_HANDLING(name) \ struct name##_state { \ + struct name inst; \ char *buffer; \ size_t bufsize; \ }; \ @@ -94,6 +95,12 @@ AGENT_BUFFER_STORAGE_MAX = 1 << 20, /* 1 MByte */ }; +enum agent_key_buffer_constants +{ + AGENT_KEY_BUFFER_STORAGE_INITIAL = 1 << 8, + AGENT_KEY_BUFFER_STORAGE_MAX = 1 << 20, +}; + #define AGENT_BUFFER_TLS_HANDLING_INIT(st) \ { \ if (st->buffer == NULL) { \ @@ -125,9 +132,11 @@ }; typedef int (*agent_marshal_func)(char *, size_t *, void *, va_list, void *); +typedef int (*agent_id_func)(char *, size_t *, va_list, void *); typedef int (*agent_lookup_func)(const char *, size_t, char **, size_t *); typedef void *(*agent_mp_init_func)(); -typedef int (*agent_mp_lookup_func)(char **, size_t *, void *); +typedef int (*agent_mp_lookup_func)(char **, size_t *, void *, void *); +typedef int (*agent_mp_keygen_func)(char **, size_t *, void *, void *); typedef void (*agent_mp_destroy_func)(void *); struct agent { @@ -145,6 +154,7 @@ agent_mp_init_func mp_init_func; agent_mp_lookup_func mp_lookup_func; + agent_mp_keygen_func mp_keygen_func; agent_mp_destroy_func mp_destroy_func; }; @@ -157,10 +167,15 @@ extern int agent_marshal_results(char **, size_t *, agent_marshal_func, void *, void *, ...); +extern int agent_id_args(char **, size_t *, agent_id_func, + void *, ...); extern struct agent_table *init_agent_table(); extern int register_agent(struct agent_table *, struct agent *); extern struct agent *find_agent(struct agent_table *, const char *, enum agent_type); extern void destroy_agent_table(struct agent_table *); + +extern int agent_precache_results(struct configuration_entry *, + struct multipart_agent *); #endif ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/Makefile.inc#3 (text) ==== ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/group.c#3 (text) ==== @@ -40,20 +40,30 @@ #include #include #include +#include "../debug.h" +#include "../cachelib.h" +#include "../config.h" +#include "../debug.h" +#include "../log.h" +#include "../singletons.h" #include "../agent.h" -#include "../debug.h" #include "group.h" +#define GROUP_KEYGEN_BYNAME (0) +#define GROUP_KEYGEN_BYGID (1) +#define GROUP_KEYGEN_END (2) + static const ns_src defaultsrc[] = { { NSSRC_COMPAT, NS_SUCCESS }, { NULL, 0 } }; - +static int group_id_func(char *, size_t *, va_list, void *); static int group_marshal_func(char *, size_t *, void *, va_list, void *); static int group_lookup_func(const char *, size_t, char **, size_t *); static void *group_mp_init_func(); -static int group_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata); +static int group_mp_lookup_func(char **, size_t *, void *, void *); +static int group_mp_keygen_func(char **, size_t *, void *, void *); static void group_mp_destroy_func(void *mdata); AGENT_DECLARE_BUFFER_TLS_HANDLING(group); @@ -67,6 +77,58 @@ #endif static int +group_id_func(char *buffer, size_t *buffer_size, va_list ap, void *cache_mdata) +{ + char *name; + gid_t gid; + + size_t desired_size, size; + int res = NS_UNAVAIL; + enum nss_lookup_type lookup_type; + + + lookup_type = (enum nss_lookup_type)cache_mdata; + switch (lookup_type) { + case nss_lt_name: + name = va_arg(ap, char *); + size = strlen(name); + desired_size = sizeof(enum nss_lookup_type) + size + 1; + if (desired_size > *buffer_size) { + res = NS_RETURN; + goto fin; + } + + memcpy(buffer, &lookup_type, sizeof(enum nss_lookup_type)); + memcpy(buffer + sizeof(enum nss_lookup_type), name, size + 1); + + res = NS_SUCCESS; + break; + case nss_lt_id: + gid = va_arg(ap, gid_t); + desired_size = sizeof(enum nss_lookup_type) + sizeof(gid_t); + if (desired_size > *buffer_size) { + res = NS_RETURN; + goto fin; + } + + memcpy(buffer, &lookup_type, sizeof(enum nss_lookup_type)); + memcpy(buffer + sizeof(enum nss_lookup_type), &gid, + sizeof(gid_t)); + + res = NS_SUCCESS; + break; + default: + /* should be unreachable */ + return (NS_UNAVAIL); + } + +fin: + *buffer_size = desired_size; + return (res); +} + + +static int group_marshal_func(char *buffer, size_t *buffer_size, void *retval, va_list ap, void *cache_mdata) { @@ -122,7 +184,7 @@ } memcpy(&new_grp, grp, sizeof(struct group)); - //memset(buffer, 0, desired_size); + memset(buffer, 0, desired_size); *buffer_size = desired_size; p = buffer + sizeof(struct group) + sizeof(char *); @@ -166,7 +228,7 @@ size_t *out_size) { struct group_state *st; - struct group grp, *retval; + struct group *retval; enum nss_lookup_type lookup_type; char *name; gid_t gid; @@ -187,12 +249,11 @@ switch (lookup_type) { case nss_lt_name: size = key_size - sizeof(enum nss_lookup_type) + 1; - name = (char *)malloc(size); + name = malloc(size); if (name == NULL) { TRACE_OUT(group_lookup_func); return (NS_UNAVAIL); } - //memset(name, 0, size); name[size - 1] = '\0'; memcpy(name, key + sizeof(enum nss_lookup_type), size - 1); break; @@ -223,7 +284,7 @@ do { result = nsdispatch(&retval, emptydtab, NSDB_GROUP, "getgrnam_r", defaultsrc, name, - &grp, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); @@ -237,7 +298,7 @@ if (result == NS_SUCCESS) result = agent_marshal_results(out_buffer, out_size, group_marshal_func, (void *)nss_lt_name, - retval, name, &grp, + retval, name, &st->inst, st->buffer, st->bufsize, &error); break; @@ -245,7 +306,7 @@ do { result = nsdispatch(&retval, emptydtab, NSDB_GROUP, "getgrgid_r", defaultsrc, gid, - &grp, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); @@ -260,7 +321,7 @@ result = agent_marshal_results(out_buffer, out_size, group_marshal_func, (void *)nss_lt_id, retval, gid, - &grp, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); break; default: /* SHOULD NOT BE REACHED */ @@ -283,10 +344,10 @@ } static int -group_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata) +group_mp_lookup_func(char **out_buffer, size_t *out_size, void *retval, + void *mdata) { struct group_state *st; - struct group grp, *retval; int result, error; TRACE_IN(group_mp_lookup_func); @@ -297,8 +358,8 @@ return (NS_UNAVAIL); do { - result = nsdispatch(&retval, emptydtab, NSDB_GROUP, - "getgrent_r", defaultsrc, &grp, st->buffer, + result = nsdispatch(retval, emptydtab, NSDB_GROUP, + "getgrent_r", defaultsrc, &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { @@ -311,14 +372,59 @@ if (result == NS_SUCCESS) { result = agent_marshal_results(out_buffer, out_size, group_marshal_func, - (void *)nss_lt_all, retval, &grp, - st->buffer, st->bufsize, &error); + (void *)nss_lt_all, *((void **)retval), + &st->inst, st->buffer, st->bufsize, &error); } TRACE_OUT(group_mp_lookup_func); return (result); } +int +group_mp_keygen_func(char **out_buffer, size_t *out_size, + void *result, void *mdata) +{ + struct group *grp; + int rv, *conv_type; + + TRACE_IN(group_mp_keygen_func); + grp = (struct group *)result; + conv_type = *((int **)mdata); + + if (grp == NULL) { + free(conv_type); + *((int **)mdata) = NULL; + return (NS_UNAVAIL); + } + + if (conv_type == NULL) { + conv_type = malloc(sizeof(int)); + *conv_type = GROUP_KEYGEN_BYNAME; + *((int **)mdata) = conv_type; + } + + switch (*conv_type) { + case GROUP_KEYGEN_BYNAME: + rv = agent_id_args(out_buffer, out_size, group_id_func, + (void *)nss_lt_name, grp->gr_name); + *conv_type = GROUP_KEYGEN_BYGID; + break; + case GROUP_KEYGEN_BYGID: + rv = agent_id_args(out_buffer, out_size, group_id_func, + (void *)nss_lt_id, grp->gr_gid); + *conv_type = GROUP_KEYGEN_END; + break; + case GROUP_KEYGEN_END: + default: + *conv_type = GROUP_KEYGEN_BYNAME; + rv = NS_NOTFOUND; + break; + } + + TRACE_OUT(group_mp_keygen_func); + return (rv); +} + static void group_mp_destroy_func(void *mdata) { @@ -333,7 +439,7 @@ struct common_agent *retval; TRACE_IN(init_group_agent); - retval = (struct common_agent *)malloc(sizeof(struct common_agent)); + retval = malloc(sizeof(struct common_agent)); if (retval == NULL) { TRACE_OUT(init_group_agent); return (NULL); @@ -360,8 +466,7 @@ struct multipart_agent *retval; TRACE_IN(init_group_mp_agent); - retval = (struct multipart_agent *)malloc( - sizeof(struct multipart_agent)); + retval = malloc(sizeof(struct multipart_agent)); if (retval == NULL) { TRACE_OUT(init_group_mp_agent); return (NULL); @@ -377,6 +482,7 @@ retval->parent.type = MULTIPART_AGENT; retval->mp_init_func = group_mp_init_func; retval->mp_lookup_func = group_mp_lookup_func; + retval->mp_keygen_func = group_mp_keygen_func; retval->mp_destroy_func = group_mp_destroy_func; TRACE_OUT(init_group_mp_agent); ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/group.h#3 (text) ==== ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/hosts.c#3 (text+ko) ==== @@ -45,8 +45,13 @@ #include #include #include +#include "../debug.h" +#include "../cachelib.h" +#include "../config.h" +#include "../debug.h" +#include "../log.h" +#include "../singletons.h" #include "../agent.h" -#include "../debug.h" #include "hosts.h" static const ns_src defaultsrc[] = { @@ -133,7 +138,7 @@ } memcpy(&new_ht, ht, sizeof(struct hostent)); - //memset(buffer, 0, desired_size); + memset(buffer, 0, desired_size); *buffer_size = desired_size; p = buffer + sizeof(struct hostent) + sizeof(char *); @@ -205,7 +210,7 @@ return (NS_RETURN); } - //memset(buffer, 0, desired_size); + memset(buffer, 0, desired_size); p = buffer; memcpy(p, &ai_size, sizeof(size_t)); @@ -301,12 +306,11 @@ key_size -= sizeof(int); size = key_size + 1; - str = (char *)malloc(size); + str = malloc(size); if (str == NULL) { TRACE_OUT(hosts_lookup_func); return (NS_UNAVAIL); } - //memset(str, 0, size); str[size - 1] = '\0'; memcpy(str, key, key_size); @@ -339,12 +343,11 @@ switch (lookup_type) { case nss_lt_name: size = key_size + 1; - str = (char *)malloc(size); + str = malloc(size); if (str == NULL) { TRACE_OUT(hosts_lookup_func); return (NS_UNAVAIL); } - //memset(str, 0, size); str[size - 1] = '\0'; memcpy(str, key, key_size); break; @@ -447,7 +450,7 @@ struct common_agent *retval; TRACE_IN(init_hosts_agent); - retval = (struct common_agent *)malloc(sizeof(struct common_agent)); + retval = malloc(sizeof(struct common_agent)); if (retval == NULL) { TRACE_OUT(init_hosts_agent); return (NULL); ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/hosts.h#3 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/net.c#3 (text+ko) ==== @@ -44,8 +44,13 @@ #include #include #include +#include "../debug.h" +#include "../cachelib.h" +#include "../config.h" +#include "../debug.h" +#include "../log.h" +#include "../singletons.h" #include "../agent.h" -#include "../debug.h" #include "net.h" static const ns_src defaultsrc[] = { @@ -126,7 +131,7 @@ memcpy(&new_ne, ne, sizeof(struct netent)); *buffer_size = desired_size; - //memset(buffer, 0, desired_size); + memset(buffer, 0, desired_size); p = buffer + sizeof(struct netent) + sizeof(char *); memcpy(buffer + sizeof(struct netent), &p, sizeof(char *)); p = (char *)_ALIGN(p); @@ -183,12 +188,11 @@ switch (lookup_type) { case nss_lt_name: size = key_size - sizeof(enum nss_lookup_type) + 1; - name = (char *)malloc(size); + name = malloc(size); if (name == NULL) { TRACE_OUT(networks_lookup_func); return (NS_UNAVAIL); } - //memset(name, 0, size); name[size - 1] = '\0'; memcpy(name, key + sizeof(enum nss_lookup_type), size - 1); break; @@ -277,7 +281,7 @@ struct common_agent *retval; TRACE_IN(init_networks_agent); - retval = (struct common_agent *)malloc(sizeof(struct common_agent)); + retval = malloc(sizeof(struct common_agent)); if (retval == NULL) { TRACE_OUT(init_networks_agent); return (NULL); ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/net.h#3 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached_openldap/src/usr.sbin/cached/agents/passwd.c#3 (text) ==== @@ -38,25 +38,84 @@ #include #include #include +#include "../debug.h" +#include "../cachelib.h" +#include "../config.h" +#include "../debug.h" +#include "../log.h" +#include "../singletons.h" #include "../agent.h" -#include "../debug.h" #include "passwd.h" +#define PASSWD_KEYGEN_BYNAME (0) +#define PASSWD_KEYGEN_BYUID (1) +#define PASSWD_KEYGEN_END (2) + static const ns_src defaultsrc[] = { { NSSRC_COMPAT, NS_SUCCESS }, { NULL, 0 } }; - +static int passwd_id_func(char *, size_t *, va_list, void *); static int passwd_marshal_func(char *, size_t *, void *, va_list, void *); static int passwd_lookup_func(const char *, size_t, char **, size_t *); static void *passwd_mp_init_func(); -static int passwd_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata); -static void passwd_mp_destroy_func(void *mdata); +static int passwd_mp_lookup_func(char **, size_t *, void *, void *); +static int passwd_mp_keygen_func(char **, size_t *, void *, void *); +static void passwd_mp_destroy_func(void *); AGENT_DECLARE_BUFFER_TLS_HANDLING(passwd); static int +passwd_id_func(char *buffer, size_t *buffer_size, va_list ap, void *cache_mdata) +{ + char *name; + uid_t uid; + size_t size, desired_size; + int res = NS_UNAVAIL; + enum nss_lookup_type lookup_type; + + lookup_type = (enum nss_lookup_type)cache_mdata; + switch (lookup_type) { + case nss_lt_name: + name = va_arg(ap, char *); + size = strlen(name); + desired_size = sizeof(enum nss_lookup_type) + size + 1; + if (desired_size > *buffer_size) { + res = NS_RETURN; + goto fin; + } + + memcpy(buffer, &lookup_type, sizeof(enum nss_lookup_type)); + memcpy(buffer + sizeof(enum nss_lookup_type), name, size + 1); + + res = NS_SUCCESS; + break; + case nss_lt_id: + uid = va_arg(ap, uid_t); + desired_size = sizeof(enum nss_lookup_type) + sizeof(uid_t); + if (desired_size > *buffer_size) { + res = NS_RETURN; + goto fin; + } + + memcpy(buffer, &lookup_type, sizeof(enum nss_lookup_type)); + memcpy(buffer + sizeof(enum nss_lookup_type), &uid, + sizeof(uid_t)); + + res = NS_SUCCESS; + break; + default: + /* should be unreachable */ + return (NS_UNAVAIL); + } + +fin: + *buffer_size = desired_size; + return (res); +} + +static int passwd_marshal_func(char *buffer, size_t *buffer_size, void *retval, va_list ap, void *cache_mdata) { @@ -108,7 +167,7 @@ } memcpy(&new_pwd, pwd, sizeof(struct passwd)); - //memset(buffer, 0, desired_size); + memset(buffer, 0, desired_size); *buffer_size = desired_size; p = buffer + sizeof(struct passwd) + sizeof(char *); @@ -165,7 +224,7 @@ size_t *out_size) { struct passwd_state *st; - struct passwd pwd, *retval; + struct passwd *retval; enum nss_lookup_type lookup_type; char *login; uid_t uid; @@ -186,12 +245,11 @@ switch (lookup_type) { case nss_lt_name: size = key_size - sizeof(enum nss_lookup_type) + 1; - login = (char *)malloc(size); + login = malloc(size); if (login == NULL) { TRACE_OUT(passwd_lookup_func); return (NS_UNAVAIL); } - //memset(login, 0, size); login[size - 1] ='\0'; memcpy(login, key + sizeof(enum nss_lookup_type), size - 1); break; @@ -222,7 +280,7 @@ do { result = nsdispatch(&retval, emptydtab, NSDB_PASSWD, "getpwnam_r", defaultsrc, login, - &pwd, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); @@ -236,7 +294,7 @@ if (result == NS_SUCCESS) result = agent_marshal_results(out_buffer, out_size, passwd_marshal_func, (void *)nss_lt_name, - retval, login, &pwd, + retval, login, &st->inst, st->buffer, st->bufsize, &error); break; @@ -244,7 +302,7 @@ do { result = nsdispatch(&retval, emptydtab, NSDB_PASSWD, "getpwuid_r", defaultsrc, uid, - &pwd, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { AGENT_BUFFER_TLS_HANDLING_RESIZE(st); @@ -259,7 +317,7 @@ result = agent_marshal_results(out_buffer, out_size, passwd_marshal_func, (void *)nss_lt_id, retval, uid, - &pwd, st->buffer, st->bufsize, &error); + &st->inst, st->buffer, st->bufsize, &error); break; default: /* SHOULD NOT BE REACHED */ @@ -282,10 +340,10 @@ } static int -passwd_mp_lookup_func(char **out_buffer, size_t *out_size, void *mdata) +passwd_mp_lookup_func(char **out_buffer, size_t *out_size, void *retval, + void *mdata) { struct passwd_state *st; - struct passwd pwd, *retval; int result, error; TRACE_IN(passwd_mp_lookup_func); @@ -296,8 +354,8 @@ return (NS_UNAVAIL); do { - result = nsdispatch(&retval, emptydtab, NSDB_PASSWD, - "getpwent_r", defaultsrc, &pwd, st->buffer, + result = nsdispatch(retval, emptydtab, NSDB_PASSWD, + "getpwent_r", defaultsrc, &st->inst, st->buffer, st->bufsize, &error); if ((result == NS_RETURN) && (error == ERANGE)) { @@ -309,15 +367,60 @@ if (result == NS_SUCCESS) { result = agent_marshal_results(out_buffer, - out_size, passwd_marshal_func, - (void *)nss_lt_all, retval, &pwd, - st->buffer, st->bufsize, &error); + out_size, passwd_marshal_func, (void *)nss_lt_all, + *((void **)retval), &st->inst, st->buffer, + st->bufsize, &error); } TRACE_OUT(passwd_mp_lookup_func); return (result); } +static int +passwd_mp_keygen_func(char **out_buffer, size_t *out_size, + void *result, void *mdata) +{ + struct passwd *pwd; + int rv, *conv_type; + + TRACE_IN(passwd_mp_keygen_type); + pwd = (struct passwd *)result; + conv_type = *((int **)mdata); + + if (pwd == NULL) { + free(conv_type); + *((int **)mdata) = NULL; + return (NS_UNAVAIL); + } + + if (conv_type == NULL) { + conv_type = malloc(sizeof(int)); + *conv_type = PASSWD_KEYGEN_BYNAME; + *((int **)mdata) = conv_type; + } + + switch (*conv_type) { + case PASSWD_KEYGEN_BYNAME: + rv = agent_id_args(out_buffer, out_size, passwd_id_func, + (void *)nss_lt_name, pwd->pw_name); + *conv_type = PASSWD_KEYGEN_BYUID; + break; + case PASSWD_KEYGEN_BYUID: + rv = agent_id_args(out_buffer, out_size, passwd_id_func, + (void *)nss_lt_id, pwd->pw_uid); + *conv_type = PASSWD_KEYGEN_END; + break; + case PASSWD_KEYGEN_END: + default: + *conv_type = PASSWD_KEYGEN_BYNAME; + rv = NS_NOTFOUND; + break; + } + + TRACE_OUT(passwd_mp_keygen_type); + return (rv); +} + static void passwd_mp_destroy_func(void *mdata) { >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Aug 21 04:34:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0E0BB16A4E1; Mon, 21 Aug 2006 04:34:06 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DEF6116A4DE for ; Mon, 21 Aug 2006 04:34:05 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9975543D46 for ; Mon, 21 Aug 2006 04:34:05 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L4Y5to016204 for ; Mon, 21 Aug 2006 04:34:05 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L4Y5jB016201 for perforce@freebsd.org; Mon, 21 Aug 2006 04:34:05 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 04:34:05 GMT Message-Id: <200608210434.k7L4Y5jB016201@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104652 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 04:34:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=104652 Change 104652 by cdjones@cdjones-impulse on 2006/08/21 04:33:12 Lay groundwork for new jail_set_resource_limits syscall. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/init_sysent.c#5 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/syscalls.c#5 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/syscalls.master#5 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/syscall.h#5 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/syscall.mk#5 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sysproto.h#5 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/init_sysent.c#5 (text+ko) ==== @@ -2,7 +2,7 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/init_sysent.c,v 1.195.2.2 2006/03/17 01:47:32 rwatson Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/kern/syscalls.master,v 1.198.2.2 2006/03/17 01:47:06 rwatson Exp */ @@ -485,4 +485,5 @@ { SYF_MPSAFE | AS(auditctl_args), (sy_call_t *)auditctl, AUE_NULL }, /* 453 = auditctl */ { SYF_MPSAFE | AS(_umtx_op_args), (sy_call_t *)_umtx_op, AUE_NULL }, /* 454 = _umtx_op */ { SYF_MPSAFE | AS(thr_new_args), (sy_call_t *)thr_new, AUE_NULL }, /* 455 = thr_new */ + { SYF_MPSAFE | AS(jail_set_resource_limits_args), (sy_call_t *)jail_set_resource_limits, AUE_NULL }, /* 456 = jail_set_resource_limits */ }; ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/syscalls.c#5 (text+ko) ==== @@ -2,7 +2,7 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/syscalls.c,v 1.181.2.2 2006/03/17 01:47:32 rwatson Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/kern/syscalls.master,v 1.198.2.2 2006/03/17 01:47:06 rwatson Exp */ @@ -463,4 +463,5 @@ "auditctl", /* 453 = auditctl */ "_umtx_op", /* 454 = _umtx_op */ "thr_new", /* 455 = thr_new */ + "jail_set_resource_limits", /* 456 = jail_set_resource_limits */ }; ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/syscalls.master#5 (text+ko) ==== @@ -793,6 +793,8 @@ long id, void *uaddr, void *uaddr2); } 455 AUE_NULL MSTD { int thr_new(struct thr_param *param, \ int param_size); } +456 AUE_NULL MSTD { int jail_set_resource_limits(unsigned int jid, \ + int cpushares, int memlimit); } ; Please copy any additions and changes to the following compatability tables: ; sys/compat/freebsd32/syscalls.master ==== //depot/projects/soc2006/cdjones_jail/src/sys/sys/syscall.h#5 (text+ko) ==== @@ -2,7 +2,7 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/sys/syscall.h,v 1.178.2.2 2006/03/17 01:47:33 rwatson Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/kern/syscalls.master,v 1.198.2.2 2006/03/17 01:47:06 rwatson Exp */ @@ -371,4 +371,5 @@ #define SYS_auditctl 453 #define SYS__umtx_op 454 #define SYS_thr_new 455 -#define SYS_MAXSYSCALL 456 +#define SYS_jail_set_resource_limits 456 +#define SYS_MAXSYSCALL 457 ==== //depot/projects/soc2006/cdjones_jail/src/sys/sys/syscall.mk#5 (text+ko) ==== @@ -1,6 +1,6 @@ # FreeBSD system call names. # DO NOT EDIT-- this file is automatically generated. -# $FreeBSD: src/sys/sys/syscall.mk,v 1.133.2.2 2006/03/17 01:47:33 rwatson Exp $ +# $FreeBSD$ # created from FreeBSD: src/sys/kern/syscalls.master,v 1.198.2.2 2006/03/17 01:47:06 rwatson Exp MIASM = \ syscall.o \ @@ -312,4 +312,5 @@ setaudit_addr.o \ auditctl.o \ _umtx_op.o \ - thr_new.o + thr_new.o \ + jail_set_resource_limits.o ==== //depot/projects/soc2006/cdjones_jail/src/sys/sys/sysproto.h#5 (text+ko) ==== @@ -2,7 +2,7 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/sys/sysproto.h,v 1.177.2.2 2006/03/17 01:47:33 rwatson Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/kern/syscalls.master,v 1.198.2.2 2006/03/17 01:47:06 rwatson Exp */ @@ -1365,6 +1365,11 @@ char param_l_[PADL_(struct thr_param *)]; struct thr_param * param; char param_r_[PADR_(struct thr_param *)]; char param_size_l_[PADL_(int)]; int param_size; char param_size_r_[PADR_(int)]; }; +struct jail_set_resource_limits_args { + char jid_l_[PADL_(unsigned int)]; unsigned int jid; char jid_r_[PADR_(unsigned int)]; + char cpushares_l_[PADL_(int)]; int cpushares; char cpushares_r_[PADR_(int)]; + char memlimit_l_[PADL_(int)]; int memlimit; char memlimit_r_[PADR_(int)]; +}; int nosys(struct thread *, struct nosys_args *); void sys_exit(struct thread *, struct sys_exit_args *); int fork(struct thread *, struct fork_args *); @@ -1674,6 +1679,7 @@ int auditctl(struct thread *, struct auditctl_args *); int _umtx_op(struct thread *, struct _umtx_op_args *); int thr_new(struct thread *, struct thr_new_args *); +int jail_set_resource_limits(struct thread *, struct jail_set_resource_limits_args *); #ifdef COMPAT_43 From owner-p4-projects@FreeBSD.ORG Mon Aug 21 06:53:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 78AE416A4E5; Mon, 21 Aug 2006 06:53:07 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E769816A4DA for ; Mon, 21 Aug 2006 06:53:06 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 673D143D6E for ; Mon, 21 Aug 2006 06:53:00 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L6r0vA032833 for ; Mon, 21 Aug 2006 06:53:00 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L6qx0c032830 for perforce@freebsd.org; Mon, 21 Aug 2006 06:52:59 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 06:52:59 GMT Message-Id: <200608210652.k7L6qx0c032830@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104654 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 06:53:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=104654 Change 104654 by cdjones@cdjones-impulse on 2006/08/21 06:52:43 IFS. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/conf/NOTES#4 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/conf/files#4 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_lock.c#5 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_sx.c#6 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_sleepqueue.c#5 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_turnstile.c#6 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_syscalls.c#6 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_lookup.c#5 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/lockmgr.h#5 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/sx.h#5 integrate .. //depot/projects/soc2006/cdjones_jail/src/sys/vm/vm_object.c#2 integrate Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/conf/NOTES#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1325.2.16 2006/08/10 10:40:45 glebius Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1325.2.17 2006/08/17 11:01:24 ru Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -2179,7 +2179,7 @@ # which is a child of the 'smbus' device. # # Supported devices: -# smb standard io through /dev/smb* +# smb standard I/O through /dev/smb* # # Supported SMB interfaces: # iicsmb I2C to SMB bridge with any iicbus interface @@ -2189,7 +2189,9 @@ # ichsmb Intel ICH SMBus controller chips (82801AA, 82801AB, 82801BA) # viapm VIA VT82C586B/596B/686A and VT8233 Power Management Unit # amdpm AMD 756 Power Management Unit +# amdsmb AMD 8111 SMBus 2.0 Controller # nfpm NVIDIA nForce Power Management Unit +# nfsmb NVIDIA nForce2/3/4 MCP SMBus 2.0 Controller # device smbus # Bus support, required for smb below. @@ -2198,7 +2200,9 @@ device ichsmb device viapm device amdpm +device amdsmb device nfpm +device nfsmb device smb ==== //depot/projects/soc2006/cdjones_jail/src/sys/conf/files#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1031.2.37 2006/08/10 10:40:45 glebius Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1031.2.38 2006/08/17 11:01:24 ru Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1811,6 +1811,7 @@ pci/alpm.c optional alpm pci pci/amdpm.c optional amdpm pci pci/amdpm.c optional nfpm pci +pci/amdsmb.c optional amdsmb pci pci/if_dc.c optional dc pci pci/if_de.c optional de pci pci/if_mn.c optional mn pci @@ -1826,6 +1827,7 @@ pci/if_xl.c optional xl pci pci/intpm.c optional intpm pci pci/ncr.c optional ncr pci +pci/nfsmb.c optional nfsmb pci pci/viapm.c optional viapm pci pci/xrpu.c optional xrpu pci posix4/ksched.c optional _kposix_priority_scheduling ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_lock.c#5 (text+ko) ==== @@ -41,7 +41,9 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_lock.c,v 1.89.2.3 2006/03/13 03:05:50 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_lock.c,v 1.89.2.4 2006/08/17 19:53:06 jhb Exp $"); + +#include "opt_ddb.h" #include #include @@ -56,6 +58,10 @@ #include #endif +#ifdef DDB +#include +#endif + /* * Locking primitives implementation. * Locks provide shared/exclusive sychronization. @@ -575,3 +581,57 @@ stack_print(&lkp->lk_stack); #endif } + +#ifdef DDB +/* + * Check to see if a thread that is blocked on a sleep queue is actually + * blocked on a 'struct lock'. If so, output some details and return true. + * If the lock has an exclusive owner, return that in *ownerp. + */ +int +lockmgr_chain(struct thread *td, struct thread **ownerp) +{ + struct lock *lkp; + + lkp = td->td_wchan; + + /* Simple test to see if wchan points to a lockmgr lock. */ + if (lkp->lk_wmesg != td->td_wmesg) + return (0); + + /* Ok, we think we have a lockmgr lock, so output some details. */ + db_printf("blocked on lk \"%s\" ", lkp->lk_wmesg); + if (lkp->lk_sharecount) { + db_printf("SHARED (count %d)\n", lkp->lk_sharecount); + *ownerp = NULL; + } else { + db_printf("EXCL (count %d)\n", lkp->lk_exclusivecount); + *ownerp = lkp->lk_lockholder; + } + return (1); +} + +DB_SHOW_COMMAND(lockmgr, db_show_lockmgr) +{ + struct thread *td; + struct lock *lkp; + + if (!have_addr) + return; + lkp = (struct lock *)addr; + + db_printf("lock type: %s\n", lkp->lk_wmesg); + db_printf("state: "); + if (lkp->lk_sharecount) + db_printf("SHARED (count %d)\n", lkp->lk_sharecount); + else if (lkp->lk_flags & LK_HAVE_EXCL) { + td = lkp->lk_lockholder; + db_printf("EXCL (count %d) %p ", lkp->lk_exclusivecount, td); + db_printf("(tid %d, pid %d, \"%s\")\n", td->td_tid, + td->td_proc->p_pid, td->td_proc->p_comm); + } else + db_printf("UNLOCKED\n"); + if (lkp->lk_waitcount > 0) + db_printf("waiters: %d\n", lkp->lk_waitcount); +} +#endif ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_sx.c#6 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_sx.c,v 1.25.2.3 2006/08/11 18:54:10 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_sx.c,v 1.25.2.4 2006/08/17 19:53:06 jhb Exp $"); #include "opt_ddb.h" @@ -48,9 +48,9 @@ #include #include +#ifdef DDB #include -#ifdef DDB static void db_show_sx(struct lock_object *lock); #endif @@ -395,4 +395,57 @@ db_printf(" waiters: %d shared, %d exclusive\n", sx->sx_shrd_wcnt, sx->sx_excl_wcnt); } + +/* + * Check to see if a thread that is blocked on a sleep queue is actually + * blocked on an sx lock. If so, output some details and return true. + * If the lock has an exclusive owner, return that in *ownerp. + */ +int +sx_chain(struct thread *td, struct thread **ownerp) +{ + struct sx *sx; + struct cv *cv; + + /* + * First, see if it looks like td is blocked on a condition + * variable. + */ + cv = td->td_wchan; + if (cv->cv_description != td->td_wmesg) + return (0); + + /* + * Ok, see if it looks like td is blocked on the exclusive + * condition variable. + */ + sx = (struct sx *)((char *)cv - offsetof(struct sx, sx_excl_cv)); + if (LOCK_CLASS(&sx->sx_object) == &lock_class_sx && + sx->sx_excl_wcnt > 0) + goto ok; + + /* + * Second, see if it looks like td is blocked on the shared + * condition variable. + */ + sx = (struct sx *)((char *)cv - offsetof(struct sx, sx_shrd_cv)); + if (LOCK_CLASS(&sx->sx_object) == &lock_class_sx && + sx->sx_shrd_wcnt > 0) + goto ok; + + /* Doesn't seem to be an sx lock. */ + return (0); + +ok: + /* We think we have an sx lock, so output some details. */ + db_printf("blocked on sx \"%s\" ", td->td_wmesg); + if (sx->sx_cnt >= 0) { + db_printf("SLOCK (count %d)\n", sx->sx_cnt); + *ownerp = NULL; + } else { + db_printf("XLOCK\n"); + *ownerp = sx->sx_xholder; + } + return (1); +} #endif ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_sleepqueue.c#5 (text+ko) ==== @@ -59,11 +59,12 @@ * variables. */ +#include +__FBSDID("$FreeBSD: src/sys/kern/subr_sleepqueue.c,v 1.18.2.4 2006/08/17 19:53:06 jhb Exp $"); + #include "opt_sleepqueue_profiling.h" +#include "opt_ddb.h" -#include -__FBSDID("$FreeBSD: src/sys/kern/subr_sleepqueue.c,v 1.18.2.3 2006/04/30 23:22:55 davidxu Exp $"); - #include #include #include @@ -77,6 +78,10 @@ #include #include +#ifdef DDB +#include +#endif + /* * Constants for the hash table of sleep queue chains. These constants are * the same ones that 4BSD (and possibly earlier versions of BSD) used. @@ -847,3 +852,62 @@ sleepq_remove(td, wchan); mtx_lock_spin(&sched_lock); } + +#ifdef DDB +DB_SHOW_COMMAND(sleepq, db_show_sleepqueue) +{ + struct sleepqueue_chain *sc; + struct sleepqueue *sq; +#ifdef INVARIANTS + struct lock_object *lock; +#endif + struct thread *td; + void *wchan; + int i; + + if (!have_addr) + return; + + /* + * First, see if there is an active sleep queue for the wait channel + * indicated by the address. + */ + wchan = (void *)addr; + sc = SC_LOOKUP(wchan); + LIST_FOREACH(sq, &sc->sc_queues, sq_hash) + if (sq->sq_wchan == wchan) + goto found; + + /* + * Second, see if there is an active sleep queue at the address + * indicated. + */ + for (i = 0; i < SC_TABLESIZE; i++) + LIST_FOREACH(sq, &sleepq_chains[i].sc_queues, sq_hash) { + if (sq == (struct sleepqueue *)addr) + goto found; + } + + db_printf("Unable to locate a sleep queue via %p\n", (void *)addr); + return; +found: + db_printf("Wait channel: %p\n", sq->sq_wchan); +#ifdef INVARIANTS + db_printf("Queue type: %d\n", sq->sq_type); + if (sq->sq_lock) { + lock = &sq->sq_lock->mtx_object; + db_printf("Associated Interlock: %p - (%s) %s\n", lock, + LOCK_CLASS(lock)->lc_name, lock->lo_name); + } +#endif + db_printf("Blocked threads:\n"); + if (TAILQ_EMPTY(&sq->sq_blocked)) + db_printf("\tempty\n"); + else + TAILQ_FOREACH(td, &sq->sq_blocked, td_slpq) { + db_printf("\t%p (tid %d, pid %d, \"%s\")\n", td, + td->td_tid, td->td_proc->p_pid, + td->td_proc->p_comm); + } +} +#endif ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/subr_turnstile.c#6 (text+ko) ==== @@ -56,11 +56,12 @@ * it from the hash table. */ +#include +__FBSDID("$FreeBSD: src/sys/kern/subr_turnstile.c,v 1.152.2.4 2006/08/17 19:53:06 jhb Exp $"); + +#include "opt_ddb.h" #include "opt_turnstile_profiling.h" -#include -__FBSDID("$FreeBSD: src/sys/kern/subr_turnstile.c,v 1.152.2.3 2006/08/01 17:40:13 jhb Exp $"); - #include #include #include @@ -74,6 +75,13 @@ #include #include +#ifdef DDB +#include +#include +#include +#include +#endif + /* * Constants for the hash table of turnstile chains. TC_SHIFT is a magic * number chosen because the sleep queue's use the same value for the @@ -840,6 +848,296 @@ return (TAILQ_FIRST(&ts->ts_blocked)); } +#ifdef DDB +static int db_pager_quit; + +static void +print_thread(struct thread *td, const char *prefix) +{ + + db_printf("%s%p (tid %d, pid %d, \"%s\")\n", prefix, td, td->td_tid, + td->td_proc->p_pid, td->td_proc->p_comm); +} + +static void +print_queue(struct threadqueue *queue, const char *header, const char *prefix) +{ + struct thread *td; + + db_printf("%s:\n", header); + if (TAILQ_EMPTY(queue)) { + db_printf("%sempty\n", prefix); + return; + } + TAILQ_FOREACH(td, queue, td_lockq) { + print_thread(td, prefix); + } +} + +DB_SHOW_COMMAND(turnstile, db_show_turnstile) +{ + struct turnstile_chain *tc; + struct turnstile *ts; + struct lock_object *lock; + int i; + + if (!have_addr) + return; + + /* + * First, see if there is an active turnstile for the lock indicated + * by the address. + */ + lock = (struct lock_object *)addr; + tc = TC_LOOKUP(lock); + LIST_FOREACH(ts, &tc->tc_turnstiles, ts_hash) + if (ts->ts_lockobj == lock) + goto found; + + /* + * Second, see if there is an active turnstile at the address + * indicated. + */ + for (i = 0; i < TC_TABLESIZE; i++) + LIST_FOREACH(ts, &turnstile_chains[i].tc_turnstiles, ts_hash) { + if (ts == (struct turnstile *)addr) + goto found; + } + + db_printf("Unable to locate a turnstile via %p\n", (void *)addr); + return; +found: + db_pager_quit = 0; + db_setup_paging(db_simple_pager, &db_pager_quit, db_lines_per_page); + lock = ts->ts_lockobj; + db_printf("Lock: %p - (%s) %s\n", lock, LOCK_CLASS(lock)->lc_name, + lock->lo_name); + if (ts->ts_owner) + print_thread(ts->ts_owner, "Lock Owner: "); + else + db_printf("Lock Owner: none\n"); + print_queue((struct threadqueue *)&ts->ts_blocked, "Waiters", "\t"); + print_queue((struct threadqueue *)&ts->ts_pending, "Pending Threads", + "\t"); +} + +/* + * Show all the threads a particular thread is waiting on based on + * non-sleepable and non-spin locks. + */ +static void +print_lockchain(struct thread *td, const char *prefix) +{ + struct lock_object *lock; + struct lock_class *class; + struct turnstile *ts; + + /* + * Follow the chain. We keep walking as long as the thread is + * blocked on a turnstile that has an owner. + */ + while (!db_pager_quit) { + db_printf("%sthread %d (pid %d, %s) ", prefix, td->td_tid, + td->td_proc->p_pid, td->td_proc->p_comm); + switch (td->td_state) { + case TDS_INACTIVE: + db_printf("is inactive\n"); + return; + case TDS_CAN_RUN: + db_printf("can run\n"); + return; + case TDS_RUNQ: + db_printf("is on a run queue\n"); + return; + case TDS_RUNNING: + db_printf("running on CPU %d\n", td->td_oncpu); + return; + case TDS_INHIBITED: + if (TD_ON_LOCK(td)) { + ts = td->td_blocked; + lock = ts->ts_lockobj; + class = LOCK_CLASS(lock); + db_printf("blocked on lock %p (%s) \"%s\"\n", + lock, class->lc_name, lock->lo_name); + if (ts->ts_owner == NULL) + return; + td = ts->ts_owner; + break; + } + db_printf("inhibited\n"); + return; + default: + db_printf("??? (%#x)\n", td->td_state); + return; + } + } +} + +DB_SHOW_COMMAND(lockchain, db_show_lockchain) +{ + struct thread *td; + + /* Figure out which thread to start with. */ + if (have_addr) + td = db_lookup_thread(addr, TRUE); + else + td = kdb_thread; + + db_pager_quit = 0; + db_setup_paging(db_simple_pager, &db_pager_quit, db_lines_per_page); + print_lockchain(td, ""); +} + +DB_SHOW_COMMAND(allchains, db_show_allchains) +{ + struct thread *td; + struct proc *p; + int i; + + i = 1; + db_pager_quit = 0; + db_setup_paging(db_simple_pager, &db_pager_quit, db_lines_per_page); + LIST_FOREACH(p, &allproc, p_list) { + FOREACH_THREAD_IN_PROC(p, td) { + if (TD_ON_LOCK(td) && LIST_EMPTY(&td->td_contested)) { + db_printf("chain %d:\n", i++); + print_lockchain(td, " "); + } + if (db_pager_quit) + return; + } + } +} + +/* + * Show all the threads a particular thread is waiting on based on + * sleepable locks. + */ +static void +print_sleepchain(struct thread *td, const char *prefix) +{ + struct thread *owner; + + /* + * Follow the chain. We keep walking as long as the thread is + * blocked on a sleep lock that has an owner. + */ + while (!db_pager_quit) { + db_printf("%sthread %d (pid %d, %s) ", prefix, td->td_tid, + td->td_proc->p_pid, td->td_proc->p_comm); + switch (td->td_state) { + case TDS_INACTIVE: + db_printf("is inactive\n"); + return; + case TDS_CAN_RUN: + db_printf("can run\n"); + return; + case TDS_RUNQ: + db_printf("is on a run queue\n"); + return; + case TDS_RUNNING: + db_printf("running on CPU %d\n", td->td_oncpu); + return; + case TDS_INHIBITED: + if (TD_ON_SLEEPQ(td)) { + if (lockmgr_chain(td, &owner) || + sx_chain(td, &owner)) { + if (owner == NULL) + return; + td = owner; + break; + } + db_printf("sleeping on %p \"%s\"\n", + td->td_wchan, td->td_wmesg); + return; + } + db_printf("inhibited\n"); + return; + default: + db_printf("??? (%#x)\n", td->td_state); + return; + } + } +} + +DB_SHOW_COMMAND(sleepchain, db_show_sleepchain) +{ + struct thread *td; + + /* Figure out which thread to start with. */ + if (have_addr) + td = db_lookup_thread(addr, TRUE); + else + td = kdb_thread; + + db_pager_quit = 0; + db_setup_paging(db_simple_pager, &db_pager_quit, db_lines_per_page); + print_sleepchain(td, ""); +} + +static void print_waiters(struct turnstile *ts, int indent); + +static void +print_waiter(struct thread *td, int indent) +{ + struct turnstile *ts; + int i; + + if (db_pager_quit) + return; + for (i = 0; i < indent; i++) + db_printf(" "); + print_thread(td, "thread "); + LIST_FOREACH(ts, &td->td_contested, ts_link) + print_waiters(ts, indent + 1); +} + +static void +print_waiters(struct turnstile *ts, int indent) +{ + struct lock_object *lock; + struct lock_class *class; + struct thread *td; + int i; + + if (db_pager_quit) + return; + lock = ts->ts_lockobj; + class = LOCK_CLASS(lock); + for (i = 0; i < indent; i++) + db_printf(" "); + db_printf("lock %p (%s) \"%s\"\n", lock, class->lc_name, lock->lo_name); + TAILQ_FOREACH(td, &ts->ts_blocked, td_lockq) + print_waiter(td, indent + 1); + TAILQ_FOREACH(td, &ts->ts_pending, td_lockq) + print_waiter(td, indent + 1); +} + +DB_SHOW_COMMAND(locktree, db_show_locktree) +{ + struct lock_object *lock; + struct lock_class *class; + struct turnstile_chain *tc; + struct turnstile *ts; + + if (!have_addr) + return; + db_pager_quit = 0; + db_setup_paging(db_simple_pager, &db_pager_quit, db_lines_per_page); + lock = (struct lock_object *)addr; + tc = TC_LOOKUP(lock); + LIST_FOREACH(ts, &tc->tc_turnstiles, ts_hash) + if (ts->ts_lockobj == lock) + break; + if (ts == NULL) { + class = LOCK_CLASS(lock); + db_printf("lock %p (%s) \"%s\"\n", lock, class->lc_name, + lock->lo_name); + } else + print_waiters(ts, 0); +} +#endif + /* * Returns true if a turnstile is empty. */ ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/uipc_syscalls.c#6 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/uipc_syscalls.c,v 1.221.2.2 2006/05/15 18:34:05 ps Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/uipc_syscalls.c,v 1.221.2.3 2006/08/15 18:48:51 alc Exp $"); #include "opt_compat.h" #include "opt_ktrace.h" @@ -1798,15 +1798,16 @@ struct uio *hdr_uio, struct uio *trl_uio, int compat) { struct vnode *vp; - struct vm_object *obj; + struct vm_object *obj = NULL; struct socket *so = NULL; struct mbuf *m, *m_header = NULL; struct sf_buf *sf; struct vm_page *pg; off_t off, xfsize, hdtr_size, sbytes = 0; int error, headersize = 0, headersent = 0; + int vfslocked; - mtx_lock(&Giant); + NET_LOCK_GIANT(); hdtr_size = 0; @@ -1815,9 +1816,26 @@ */ if ((error = fgetvp_read(td, uap->fd, &vp)) != 0) goto done; + vfslocked = VFS_LOCK_GIANT(vp->v_mount); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); obj = vp->v_object; + if (obj != NULL) { + /* + * Temporarily increase the backing VM object's reference + * count so that a forced reclamation of its vnode does not + * immediately destroy it. + */ + VM_OBJECT_LOCK(obj); + if ((obj->flags & OBJ_DEAD) == 0) { + vm_object_reference_locked(obj); + VM_OBJECT_UNLOCK(obj); + } else { + VM_OBJECT_UNLOCK(obj); + obj = NULL; + } + } VOP_UNLOCK(vp, 0, td); + VFS_UNLOCK_GIANT(vfslocked); if (obj == NULL) { error = EINVAL; goto done; @@ -1973,6 +1991,7 @@ * Get the page from backing store. */ bsize = vp->v_mount->mnt_stat.f_iosize; + vfslocked = VFS_LOCK_GIANT(vp->v_mount); vn_lock(vp, LK_SHARED | LK_RETRY, td); /* * XXXMAC: Because we don't have fp->f_cred here, @@ -1984,6 +2003,7 @@ IO_VMIO | ((MAXBSIZE / bsize) << IO_SEQSHIFT), td->td_ucred, NOCRED, &resid, td); VOP_UNLOCK(vp, 0, td); + VFS_UNLOCK_GIANT(vfslocked); VM_OBJECT_LOCK(obj); vm_page_lock_queues(); vm_page_io_finish(pg); @@ -2163,14 +2183,19 @@ sbytes += hdtr_size; copyout(&sbytes, uap->sbytes, sizeof(off_t)); } - if (vp) + if (obj != NULL) + vm_object_deallocate(obj); + if (vp != NULL) { + vfslocked = VFS_LOCK_GIANT(vp->v_mount); vrele(vp); + VFS_UNLOCK_GIANT(vfslocked); + } if (so) fputsock(so); if (m_header) m_freem(m_header); - mtx_unlock(&Giant); + NET_UNLOCK_GIANT(); if (error == ERESTART) error = EINTR; ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/vfs_lookup.c#5 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/vfs_lookup.c,v 1.80.2.7 2006/04/30 03:57:46 kris Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/vfs_lookup.c,v 1.80.2.8 2006/08/18 14:03:29 rwatson Exp $"); #include "opt_ktrace.h" #include "opt_mac.h" @@ -86,7 +86,7 @@ "Enables/Disables shared locks for path name translation"); /* - * Convert a pathname into a pointer to a locked inode. + * Convert a pathname into a pointer to a locked vnode. * * The FOLLOW flag is set when symbolic links are to be followed * when they occur at the end of the name translation process. @@ -593,7 +593,7 @@ /* * We return with ni_vp NULL to indicate that the entry * doesn't currently exist, leaving a pointer to the - * (possibly locked) directory inode in ndp->ni_dvp. + * (possibly locked) directory vnode in ndp->ni_dvp. */ if (cnp->cn_flags & SAVESTART) { ndp->ni_startdir = ndp->ni_dvp; @@ -840,7 +840,7 @@ /* * We return with ni_vp NULL to indicate that the entry * doesn't currently exist, leaving a pointer to the - * (possibly locked) directory inode in ndp->ni_dvp. + * (possibly locked) directory vnode in ndp->ni_dvp. */ return (0); } ==== //depot/projects/soc2006/cdjones_jail/src/sys/sys/lockmgr.h#5 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)lock.h 8.12 (Berkeley) 5/19/95 - * $FreeBSD: src/sys/sys/lockmgr.h,v 1.47.2.1 2006/03/13 03:07:09 jeff Exp $ + * $FreeBSD: src/sys/sys/lockmgr.h,v 1.47.2.2 2006/08/17 19:53:06 jhb Exp $ */ #ifndef _SYS_LOCKMGR_H_ @@ -203,5 +203,8 @@ void lockmgr_printinfo(struct lock *); int lockstatus(struct lock *, struct thread *); int lockcount(struct lock *); +#ifdef DDB +int lockmgr_chain(struct thread *td, struct thread **ownerp); +#endif #endif /* !_SYS_LOCKMGR_H_ */ ==== //depot/projects/soc2006/cdjones_jail/src/sys/sys/sx.h#5 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH * DAMAGE. * - * $FreeBSD: src/sys/sys/sx.h,v 1.21.2.1 2005/09/21 21:05:19 jhb Exp $ + * $FreeBSD: src/sys/sys/sx.h,v 1.21.2.2 2006/08/17 19:53:06 jhb Exp $ */ #ifndef _SYS_SX_H_ @@ -60,6 +60,9 @@ #ifdef INVARIANT_SUPPORT void _sx_assert(struct sx *sx, int what, const char *file, int line); #endif +#ifdef DDB +int sx_chain(struct thread *td, struct thread **ownerp); +#endif struct sx_args { struct sx *sa_sx; ==== //depot/projects/soc2006/cdjones_jail/src/sys/vm/vm_object.c#2 (text+ko) ==== @@ -63,7 +63,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_object.c,v 1.349.2.4 2006/03/13 03:08:21 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_object.c,v 1.349.2.5 2006/08/15 17:51:02 alc Exp $"); #include #include @@ -517,8 +517,11 @@ VM_OBJECT_UNLOCK(object); vm_object_pip_wait(robject, "objde1"); - VM_OBJECT_LOCK(object); - goto retry; + temp = robject->backing_object; + if (object == temp) { + VM_OBJECT_LOCK(object); + goto retry; + } } else if (object->paging_in_progress) { VM_OBJECT_UNLOCK(robject); object->flags |= OBJ_PIPWNT; @@ -526,10 +529,14 @@ VM_OBJECT_MTX(object), PDROP | PVM, "objde2", 0); VM_OBJECT_LOCK(robject); - VM_OBJECT_LOCK(object); - goto retry; - } - VM_OBJECT_UNLOCK(object); + temp = robject->backing_object; + if (object == temp) { + VM_OBJECT_LOCK(object); + goto retry; + } + } else + VM_OBJECT_UNLOCK(object); + if (robject->ref_count == 1) { robject->ref_count--; object = robject; From owner-p4-projects@FreeBSD.ORG Mon Aug 21 07:11:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6A32E16A4E1; Mon, 21 Aug 2006 07:11:38 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2D8A116A4DE for ; Mon, 21 Aug 2006 07:11:38 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B162D43D7F for ; Mon, 21 Aug 2006 07:11:26 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L7BO4j036200 for ; Mon, 21 Aug 2006 07:11:24 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L7BOQr036197 for perforce@freebsd.org; Mon, 21 Aug 2006 07:11:24 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 07:11:24 GMT Message-Id: <200608210711.k7L7BOQr036197@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104655 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 07:11:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=104655 Change 104655 by cdjones@cdjones-impulse on 2006/08/21 07:10:35 Documentation update for jls and jail; adding flags to jail for cpu shares and memory limits; and getting jtune to set jail limits. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jail/jail.8#5 edit .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jail/jail.c#8 edit .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jls/Makefile#1 branch .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jls/jls.8#1 add .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jls/jls.c#1 branch .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jtune/jtune.8#2 edit .. //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jtune/jtune.c#2 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jail/jail.8#5 (text+ko) ==== @@ -45,6 +45,8 @@ .Op Fl J Ar jid_file .Op Fl s Ar securelevel .Op Fl l u Ar username | Fl U Ar username +.Op Fl S Ar cpu_shares +.Op Fl M Ar mem_limit .Ar path hostname ip-number command ... .Sh DESCRIPTION The @@ -86,6 +88,10 @@ The user name from jailed environment as whom the .Ar command should run. +.It Fl S Ar cpu_shares +CPU shares to assign to the prison. +.It Fl M Ar mem_limit +Amount of memory (in MB) to allow the prison to use. .It Ar path Directory which is to be the root of the prison. .It Ar hostname @@ -542,6 +548,17 @@ privileged, and may manipulate system file flags subject to the usual constraints on .Va kern.securelevel . +.It Va security.jail.limit_jail_memory, Va security.jail.jail_pager_interval +These MIB entries determine whether and how often (in seconds) a +jail's memory-limit monitoring daemon will run, and consequently the +period during which a jail can be overcommitted for resident memory. +.It Va kern.sched.limit_jail_cpu +This MIB entry sets whether CPU usage limits will be enforced +against processes in jails with CPU limits. +.It Va kern.sched.system_cpu_shares +Number of CPU usage shares to allocate to unjailed processes for the +purposes of determining CPU usage permitted for jailed processes. +Unjailed processes are not subject to CPU usage limits. .El .Pp The read-only ==== //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jail/jail.c#8 (text+ko) ==== @@ -56,7 +56,8 @@ struct in_addr in; gid_t groups[NGROUPS]; int ch, i, iflag, Jflag, lflag, ngroups, securelevel, uflag, Uflag; - unsigned int mem_limit, priority; + unsigned int mem_limit = 0; + unsigned int sched_shares = 0; char path[PATH_MAX], *ep, *username, *JidFile; static char *cleanenv; const char *shell, *p = NULL; @@ -64,13 +65,11 @@ FILE *fp; iflag = Jflag = lflag = uflag = Uflag = 0; - mem_limit = JAIL_DEFAULT_MEM_LIMIT; - priority = JAIL_DEFAULT_PRIORITY; securelevel = -1; username = JidFile = cleanenv = NULL; fp = NULL; - while ((ch = getopt(argc, argv, "ilp:m:s:u:U:J:")) != -1) { + while ((ch = getopt(argc, argv, "ilS:M:s:u:U:J:")) != -1) { switch (ch) { case 'i': iflag = 1; @@ -79,16 +78,12 @@ JidFile = optarg; Jflag = 1; break; - case 'm': - /* TODO --- should this be specified in MB? */ + case 'M': mem_limit = atoi(optarg); mem_limit *= 1024 * 1024; break; - case 'p': - priority = atoi(optarg); - if (priority < JAIL_MINIMUM_PRIORITY || - priority > JAIL_MAXIMUM_PRIORITY) - errx(1, "invalid priority: `%s'", optarg); + case 'S': + sched_shares = atoi(optarg); break; case 's': ltmp = strtol(optarg, &ep, 0); @@ -133,7 +128,7 @@ errx(1, "Could not make sense of ip-number: %s", argv[2]); j.ip_number = ntohl(in.s_addr); j.mem_limit = mem_limit; - j.priority = priority; + j.sched_shares = sched_shares; if (Jflag) { fp = fopen(JidFile, "w"); if (fp == NULL) @@ -199,8 +194,8 @@ { (void)fprintf(stderr, "%s%s%s%s%s\n", - "usage: jail [-i] [-J jid_file] [-m mem_limit] ", - "[-p priority] [-s securelevel]", + "usage: jail [-i] [-J jid_file] [-M mem_limit] ", + "[-S cpu_shares] [-s securelevel]", " [-l -u ", "username | -U username]", " path hostname ip-number command ..."); ==== //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jtune/jtune.8#2 (text+ko) ==== @@ -1,0 +1,75 @@ +.\" Copyright (c) 2006 Chris Jones +.\" All rights reserved. +.\" +.\" This software was developed for the FreeBSD Project by Chris Jones +.\" thanks to the support of Google's Summer of Code program and +.\" mentoring by Kip Macy. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (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$ +.\" +.Dd August 21, 2006 +.Dt JTUNE 8 +.Os +.Sh NAME +.Nm jtune +.Nd "modify jail resource limits" +.Sh SYNOPSIS +.Nm +.Fl j Ar jail_id +.Op Fl i +.Op Fl m Ar mem_limit +.Op Fl s Ar cpu_shares +.Sh DESCRIPTION +The +.Nm +utility modifies a jail's memory and CPU usage limits. +.Pp +The options are as follows: +.Bl -tag -width ".Fl u Ar cpu_shares" +.It Ar jail_id +Jail identifier (JID) of the jail whose limits are being tuned. +.It Fl i +Show jail's resource limits. +.It Fl m Ar mem_limit +Limit a jail's memory usage (resident set size) to +.Ar mem_limit +megabytes. +.It Fl s Ar cpu_shares +Set a jail's CPU shares to +.Ar cpu_shares +shares. +.Sh SEE ALSO +.Xr jail 2 , +.Xr jail 8 , +.Xr jexec 8 +.Xr jls 8 +.Sh HISTORY +The +.Nm +utility first appeared in +.Fx FIXME . +.Pp +.Nm +was written by Chris Jones through the 2006 Google Summer of Code +program. ==== //depot/projects/soc2006/cdjones_jail/src/usr.sbin/jtune/jtune.c#2 (text+ko) ==== @@ -1,12 +1,41 @@ +/*- + * Copyright (c) 2006 Chris Jones + * All rights reserved. + * + * This software was developed for the FreeBSD Project by Chris Jones + * thanks to the support of Google's Summer of Code program and + * mentoring by Kip Macy. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + #include +__FBSDID("$FreeBSD"); #include #include #include -#include -#include - #include #include #include @@ -25,100 +54,135 @@ int main(int argc, char **argv) { - struct xprison *xp; - int jid = 0; - int memlimit = -1; - int shares = 0; - int ch; + struct xprison *xp; + int jid = 0; + int memlimit = -1; + int shares = -1; + int iflag = 0; + int retval; + int ch; + + while ((ch = getopt(argc, argv, "ij:m:s:")) != -1) { + switch (ch) { + case 'i': + iflag = 1; + break; + case 'j': + jid = atoi(optarg); + if (!jid && errno) + err(1, "invalid jail id '%s'", optarg); + break; + + case 'm': + memlimit = atoi(optarg); + if (!memlimit && errno) + err(1, "invalid memory limit '%s'", optarg); + if (memlimit < 0) + errx(1, "invalid memory limit '%s'", optarg); + memlimit *= 1024 * 1024; + break; + + case 's': + shares = atoi(optarg); + if (!shares && errno) + err(1, "invalid cpu share '%s'", optarg); + if (shares < 0) + errx(1, "invalid cpu share '%s'", optarg); + break; + + default: + usage(); + } + } + + argc -= optind; + argv += optind; - while ((ch = getopt(argc, argv, "j:m:s:")) != -1) { - switch (ch) { - case 'j': - jid = atoi(optarg); - if (jid < 1) - errx(1, "invalid jail id '%s'", optarg); - break; + if (!jid) + usage(); + + xp = getxprison(jid); + if (NULL == xp) + errx(1, "no jail with id %d", jid); - case 'm': - memlimit = atoi(optarg); - if (memlimit > 0 || -1 != memlimit) - errx(1, "invalid memory limit '%s'", optarg); - break; + if (iflag) { + char *memlimstr, *memusestr; - case 's': - shares = atoi(optarg); - if (shares < 1) - errx(1, "invalid cpu share '%s'", optarg); - break; + asprintf(&memusestr, "%d M", + xp->pr_mem_usage / (1024 * 1024)); + if (xp->pr_mem_limit) { + asprintf(&memlimstr, "%d M", + xp->pr_mem_limit / (1024 * 1024)); + } else { + asprintf(&memlimstr, "None"); + } - default: - usage(); - } - } + if (NULL == memusestr || NULL == memlimstr) + err(1, "couldn't allocate memory"); - argc -= optind; - argv += optind; + printf(" JID Hostname Memory Used / Limit CPU Shares\n"); + printf("%6d %-24.24s %6s / %-6.6s %-4d\n", + xp->pr_id, xp->pr_host, + memusestr, memlimstr, + xp->pr_sched_shares); + exit(0); + } - xp = getxprison(jid); - if (NULL == xp) - errx(1, "no jail with id %d", jid); - - /* - * TODO --- set memory or cpu here. Will need sysctl, presumably. - */ - - warnx("jail id %d, memory limit %d, cpu share %d", jid, memlimit, shares); - printf("Jail '%s' has %d shares (%d CPU) and memory limit %d (used %d)\n", - xp->pr_host, xp->pr_sched_shares, xp->pr_estcpu, - xp->pr_mem_limit, xp->pr_mem_usage); - exit(0); - + retval = jail_set_resource_limits(jid, shares, memlimit); + if (retval) { + errx(1, "jail_set_resource_limit(%d, %d, %d) failed", + jid, memlimit, shares); + } + exit(0); + } static void usage() { - exit(0); + (void)fprintf(stderr, "%s\n", + "usage: jtune -j jid_id [-m mem_limit] [-s cpu_shares]"); + exit(0); } static struct xprison * getxprison(int jid) { - size_t i, len; - struct xprison *xpl, *sxpl; - if (sysctlbyname("security.jail.list", NULL, &len, NULL, 0) == -1) - err(1, "sysctlbyname(): security.jail.list"); + size_t i, len; + struct xprison *xpl, *sxpl; + if (sysctlbyname("security.jail.list", NULL, &len, NULL, 0) == -1) + err(1, "sysctlbyname(): security.jail.list"); + + if (len <= 0) + errx(1, "sysctl security.jail.list has no entries for jid %d", jid); + + /* getxprison allocates the structure, caller frees */ + sxpl = xpl = malloc(len); + if (NULL == xpl) + err(1, "malloc()"); + + if (sysctlbyname("security.jail.list", xpl, &len, NULL, 0) == -1) { + free(xpl); + err(1, "sysctlbyname(): security.jail.list"); + } + + if (len < sizeof(*xpl) || len % sizeof(*xpl) || + xpl->pr_version != XPRISON_VERSION) + errx(1, "Kernel and userland out of sync"); + + for (i = 0; i < len / sizeof(*xpl); i++) { + if (jid == xpl->pr_id) { + struct xprison *xp; + xp = malloc(sizeof (struct xprison)); + if (NULL == xp) + err(1, "malloc()"); + memcpy(xp, xpl, sizeof (struct xprison)); + free(sxpl); + return xp; + } + xpl++; + } - if (len <= 0) - errx(1, "sysctl security.jail.list has no entries for jid %d", jid); - - /* getxprison allocates the structure, caller frees */ - sxpl = xpl = malloc(len); - if (NULL == xpl) - err(1, "malloc()"); - - if (sysctlbyname("security.jail.list", xpl, &len, NULL, 0) == -1) { - free(xpl); - err(1, "sysctlbyname(): security.jail.list"); - } - - if (len < sizeof(*xpl) || len % sizeof(*xpl) || - xpl->pr_version != XPRISON_VERSION) - errx(1, "Kernel and userland out of sync"); - - for (i = 0; i < len / sizeof(*xpl); i++) { - if (jid == xpl->pr_id) { - struct xprison *xp; - xp = malloc(sizeof (struct xprison)); - if (NULL == xp) - err(1, "malloc()"); - memcpy(xp, xpl, sizeof (struct xprison)); - free(sxpl); - return xp; - } - xpl++; - } - - free(sxpl); - return NULL; + free(sxpl); + return NULL; } From owner-p4-projects@FreeBSD.ORG Mon Aug 21 07:13:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8953F16A4E5; Mon, 21 Aug 2006 07:13:28 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 62D7316A4DD for ; Mon, 21 Aug 2006 07:13:28 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3075E43D8E for ; Mon, 21 Aug 2006 07:13:28 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L7DSp8036294 for ; Mon, 21 Aug 2006 07:13:28 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L7DRgs036291 for perforce@freebsd.org; Mon, 21 Aug 2006 07:13:27 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 07:13:27 GMT Message-Id: <200608210713.k7L7DRgs036291@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104656 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 07:13:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=104656 Change 104656 by cdjones@cdjones-impulse on 2006/08/21 07:13:08 Clear out cruft, support new jail_set_resource_limits syscall. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/jail.h#19 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/sys/jail.h#19 (text+ko) ==== @@ -18,8 +18,8 @@ char *path; char *hostname; u_int32_t ip_number; - unsigned int sched_shares; - unsigned int mem_limit; + unsigned int sched_shares; + unsigned int mem_limit; }; struct xprison { @@ -35,16 +35,8 @@ }; #define XPRISON_VERSION 2 -#define JAIL_DEFAULT_PRIORITY 10 -#define JAIL_MINIMUM_PRIORITY 1 -#define JAIL_MAXIMUM_PRIORITY 100 +#define JAIL_MINIMUM_SHARES 1 -#define JAIL_DEFAULT_MEM_LIMIT 256 * 1024 * 1024 - -#define J_SCHED_TD_ACTIVE 0x01 -#define J_SCHED_TD_DIE 0x02 -#define J_SCHED_TD_DEAD 0x04 - #define J_PAGER_TD_ACTIVE 0x01 #define J_PAGER_TD_DIE 0x02 #define J_PAGER_TD_DEAD 0x04 @@ -53,6 +45,7 @@ int jail(struct jail *); int jail_attach(int); +int jail_set_resource_limits(unsigned int, int, int); #else /* _KERNEL */ @@ -98,7 +91,7 @@ int pr_securelevel; /* (p) securelevel */ struct task pr_task; /* (d) destroy task */ struct mtx pr_mtx; - u_int32_t pr_sched_shares; /* (p) jail priority */ + u_int32_t pr_sched_shares; /* (p) jail priority */ u_int pr_estcpu; /* (p) est. cpu of jail */ struct proc *pr_pager; /* (c) pager pid */ int *pr_pager_flags_ptr; /* (p) communication to pager */ From owner-p4-projects@FreeBSD.ORG Mon Aug 21 07:14:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6F7D516A4E0; Mon, 21 Aug 2006 07:14:31 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2605216A4DA for ; Mon, 21 Aug 2006 07:14:31 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F1AB243D73 for ; Mon, 21 Aug 2006 07:14:29 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L7ETSp036368 for ; Mon, 21 Aug 2006 07:14:29 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L7ET2H036365 for perforce@freebsd.org; Mon, 21 Aug 2006 07:14:29 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 07:14:29 GMT Message-Id: <200608210714.k7L7ET2H036365@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104657 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 07:14:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=104657 Change 104657 by cdjones@cdjones-impulse on 2006/08/21 07:14:22 Only affect processes when kern.sched.limit_jail_cpu sysctl set. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_hier.c#19 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_hier.c#19 (text+ko) ==== @@ -295,8 +295,14 @@ &sched_kgfollowons, 0, "number of followons done in a ksegrp"); +static int sched_limitjailcpu = 0; +SYSCTL_INT(_kern_sched, OID_AUTO, limit_jail_cpu, + CTLFLAG_RW, + &sched_limitjailcpu, 0, + "limit jailed process cpu usage"); + static int sched_unjailedProcessShares = 0; -SYSCTL_INT(_kern_sched, OID_AUTO, unjailedprocessshares, +SYSCTL_INT(_kern_sched, OID_AUTO, system_cpu_shares, CTLTYPE_INT | CTLFLAG_RW, &sched_unjailedProcessShares, 0, "number of shares to allocate to unjailed processes"); @@ -549,10 +555,11 @@ continue; kg->kg_estcpu = decay_cpu(loadfac, kg->kg_estcpu); total_est_cpu += kg->kg_estcpu; - if (NULL != kg->kg_proc->p_ucred && + if (sched_limitjailcpu && + NULL != kg->kg_proc->p_ucred && NULL != kg->kg_proc->p_ucred->cr_prison) kg->kg_proc->p_ucred->cr_prison->pr_estcpu += - kg->kg_estcpu; + kg->kg_estcpu; resetpriority(kg); FOREACH_THREAD_IN_GROUP(kg, td) { resetpriority_thread(td, kg); @@ -575,23 +582,25 @@ u_int32_t shares = 0; for (;;) { - /* - * Update total jail CPU shares in case they've changed. - * Safe to read pr_sched_shares without mutex because - * in worst case, we get a bogus value which will be - * corrected on the next pass. - * - * TODO: this should be done by forcing a recalculation - * when jail CPU shares are added / changed, rather than - * doing it every second. - */ - shares = sched_unjailedProcessShares; - LIST_FOREACH(pr, &allprison, pr_list) { - shares += pr->pr_sched_shares; - } - total_cpu_sched_shares = shares; - counter++; - + if (sched_limitjailcpu) { + /* + * Update total jail CPU shares in case they've changed. + * Safe to read pr_sched_shares without mutex because + * in worst case, we get a bogus value which will be + * corrected on the next pass. + * + * TODO: this should be done by forcing a recalculation + * when jail CPU shares are added / changed, rather than + * doing it every secondc. + */ + + shares = sched_unjailedProcessShares; + LIST_FOREACH(pr, &allprison, pr_list) { + shares += pr->pr_sched_shares; + } + total_cpu_sched_shares = shares; + } + schedcpu(); tsleep(&nowake, 0, "-", hz); } @@ -635,19 +644,16 @@ if (kg->kg_pri_class == PRI_TIMESHARE) { newpriority = PUSER + kg->kg_estcpu / INVERSE_ESTCPU_WEIGHT + - NICE_WEIGHT * (kg->kg_proc->p_nice - PRIO_MIN); - if (NULL == pr) { - newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), - PRI_MAX_TIMESHARE); - } else { - /* - * Skew the priority by the jail's share of CPU resources. - * The unjailed processes get half the CPU time. - * - * TODO: this is a hard limit. We should really also have - * soft limits available. Also, the amount of CPU time - * reserved to unjailed processes really should be sysctl'd. - */ + NICE_WEIGHT * (kg->kg_proc->p_nice - PRIO_MIN); + if (sched_limitjailcpu && NULL != pr) { + /* + * Skew the priority by the jail's share of CPU resources. + * The unjailed processes get half the CPU time. + * + * TODO: this is a hard limit. We should really also have + * soft limits available. Also, the amount of CPU time + * reserved to unjailed processes really should be sysctl'd. + */ register unsigned int np = newpriority; register unsigned int skew; skew = pr->pr_estcpu * total_cpu_sched_shares; @@ -656,15 +662,19 @@ /* wait your turn until your cpu usage's proportionate */ newpriority = PRI_MAX_IDLE; } else { - newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), - PRI_MAX_TIMESHARE); + newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), + PRI_MAX_TIMESHARE); } printf("skew KSE %p (%d / %d cpu, %d / %d shares) from %d to %d\n", - &kg, pr->pr_estcpu, total_est_cpu, - pr->pr_sched_shares, - total_cpu_sched_shares, - np, newpriority); + &kg, pr->pr_estcpu, total_est_cpu, + pr->pr_sched_shares, + total_cpu_sched_shares, + np, newpriority); + } else { + newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), + PRI_MAX_TIMESHARE); } + kg->kg_user_pri = newpriority; } } From owner-p4-projects@FreeBSD.ORG Mon Aug 21 07:18:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 98DBB16A4DE; Mon, 21 Aug 2006 07:18:36 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3931316A4DA for ; Mon, 21 Aug 2006 07:18:36 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DCD7743D4C for ; Mon, 21 Aug 2006 07:18:35 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L7IZlr036657 for ; Mon, 21 Aug 2006 07:18:35 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L7IZoK036654 for perforce@freebsd.org; Mon, 21 Aug 2006 07:18:35 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 07:18:35 GMT Message-Id: <200608210718.k7L7IZoK036654@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104658 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 07:18:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=104658 Change 104658 by cdjones@cdjones-impulse on 2006/08/21 07:18:05 Introduce security.jail.limit_jail_memory and security.jail.jail_pager_interval sysctls. Bring jpager_td back into the build, running iff limit_jail_memory sysctl set. Get rid of old scheduler td cruft. Add jail_set_resource_limits syscall. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#23 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#23 (text+ko) ==== @@ -5,6 +5,35 @@ * can do whatever you want with this stuff. If we meet some day, and you think * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp * ---------------------------------------------------------------------------- + * + * Portions copyright (c) 2006 Chris Jones + * All rights reserved. + * + * This software was developed for the FreeBSD Project by Chris Jones + * thanks to the support of Google's Summer of Code program and + * mentoring by Kip Macy. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * */ #include @@ -78,6 +107,17 @@ &jail_chflags_allowed, 0, "Processes in jail can alter system file flags"); +int jail_limit_memory = 0; +SYSCTL_INT(_security_jail, OID_AUTO, limit_jail_memory, CTLFLAG_RW, + &jail_limit_memory, 0, + "Limit jails' memory usage"); + +int jail_memory_pager_interval = 5; +SYSCTL_INT(_security_jail, OID_AUTO, jail_pager_interval, + CTLTYPE_INT | CTLFLAG_RW, + &jail_memory_pager_interval, 0, + "Interval between jail memory limit checks"); + /* allprison, lastprid, and prisoncount are protected by allprison_mtx. */ struct prisonlist allprison; struct mtx allprison_mtx; @@ -99,111 +139,104 @@ SYSINIT(prison, SI_SUB_INTRINSIC, SI_ORDER_ANY, init_prison, NULL); -#if 0 static void jpager_td(void *arg) { - struct proc *p; - struct prison *pr = arg; - struct thread *td; - long limit, cursize, newsize, usage; - int breakout; - int pr_id = pr->pr_id; - int flags = J_SCHED_TD_ACTIVE; - pr->pr_scheduler_flags_ptr = &flags; - - printf("Starting jpager/%d with memory limit %ld bytes\n", - pr_id, (long) prison_memory_limit(pr)); - - for (;;) { - if (flags & J_PAGER_TD_DIE) - break; + struct proc *p; + struct prison *pr = arg; + struct thread *td; + long limit, cursize, newsize, usage; + int breakout; + int pr_id = pr->pr_id; + int flags = J_PAGER_TD_ACTIVE; + pr->pr_pager_flags_ptr = &flags; + + for (;;) { + if (flags & J_PAGER_TD_DIE) + break; + + if (jail_limit_memory && pr->pr_mem_limit) { + /* TODO: consider whether it might be better to start + * pushing back when we approach the limit, rather than + * when we hit it. + */ + limit = (long) prison_memory_limit(pr); + usage = (long) prison_memory(pr); + + /* The logic from vm_daemon() really needs to go here. + * Problem: we want to push things below their rlimits. + * + * TODO: refactor vm_daemon to optionally act on specific jails? + */ + + printf("jpager/%d: memory %ld / %ld bytes\n", + pr_id, usage, limit); + + if ((usage - limit) > 0) { + printf("jpager/%d: overcommitted by %ld bytes (%f percent)\n", + pr_id, usage - limit, + (double) 100 * ((double) (usage - limit) / (double) limit)); + sx_slock(&allproc_lock); + LIST_FOREACH(p, &allproc, p_list) { + + if (pr != p->p_ucred->cr_prison) + continue; + + PROC_LOCK(p); + if (p->p_flag & (P_SYSTEM | P_WEXIT)) { + PROC_UNLOCK(p); + continue; + } + + mtx_lock_spin(&sched_lock); + breakout = 0; + FOREACH_THREAD_IN_PROC(p, td) { + if (!TD_ON_RUNQ(td) && + !TD_IS_RUNNING(td) && + !TD_IS_SLEEPING(td)) { + breakout = 1; + break; + } + } + mtx_unlock_spin(&sched_lock); + if (breakout) { + PROC_UNLOCK(p); + continue; + } + + /* NOTE: we differ here from vm_daemon b/c we don't + * care about the rlimit; things that are exceeding that will + * get caught in due course. We need, however, to decrease + * the pressure on our permitted memory allocation. Fortunately, + * we only care about eventually hitting the limit, so if we + * don't get there right away, it's okay. + */ + + /* TODO: this arbitrarily reduces each process's space by + * 5% (until it's completely swapped out) while + * we're under memory pressure. A better way would be + * to either hit large processes first, or to hit the + * least-active processes first, or go proportionally, + * or .... + */ + newsize = cursize = (long) vmspace_resident_count(p->p_vmspace); + newsize -= newsize / 20; + if (cursize < 0) + newsize = 0; + PROC_UNLOCK(p); + printf("jpager/%d: squeezing process %d from %ld to %ld\n", + pr_id, p->p_pid, cursize, newsize); + vm_pageout_map_deactivate_pages(&p->p_vmspace->vm_map, newsize); + } /* end LIST_FOREACH procs */ + sx_sunlock(&allproc_lock); + } + } - /* TODO: consider whether it might be better to start - * pushing back when we approach the limit, rather than - * when we hit it. - */ - limit = (long) prison_memory_limit(pr); - usage = (long) prison_memory(pr); - - /* The logic from vm_daemon() really needs to go here. - * Problem: we want to push things below their rlimits. - * - * TODO: refactor vm_daemon to optionally act on specific jails? - */ - - printf("jpager/%d: memory %ld / %ld bytes\n", - pr_id, usage, limit); - - if ((usage - limit) > 0) { - printf("jpager/%d: overcommitted by %ld bytes (%f percent)\n", - pr_id, usage - limit, - (double) 100 * ((double) (usage - limit) / (double) limit)); - sx_slock(&allproc_lock); - LIST_FOREACH(p, &allproc, p_list) { - - if (pr != p->p_ucred->cr_prison) - continue; - - PROC_LOCK(p); - if (p->p_flag & (P_SYSTEM | P_WEXIT)) { - PROC_UNLOCK(p); - continue; + tsleep(pr, 0, "-", jail_memory_pager_interval * hz); } - mtx_lock_spin(&sched_lock); - breakout = 0; - FOREACH_THREAD_IN_PROC(p, td) { - if (!TD_ON_RUNQ(td) && - !TD_IS_RUNNING(td) && - !TD_IS_SLEEPING(td)) { - breakout = 1; - break; - } - } - mtx_unlock_spin(&sched_lock); - if (breakout) { - PROC_UNLOCK(p); - continue; - } - - /* NOTE: we differ here from vm_daemon b/c we don't - * care about the rlimit; things that are exceeding that will - * get caught in due course. We need, however, to decrease - * the pressure on our permitted memory allocation. Fortunately, - * we only care about eventually hitting the limit, so if we - * don't get there right away, it's okay. - */ - - /* TODO: this arbitrarily reduces each process's space by - * 5% (until it's completely swapped out) while - * we're under memory pressure. A better way would be - * to either hit large processes first, or to hit the - * least-active processes first, or go proportionally, - * or .... - */ - newsize = cursize = (long) vmspace_resident_count(p->p_vmspace); - newsize -= newsize / 20; - if (cursize < 0) - newsize = 0; - PROC_UNLOCK(p); - printf("jpager/%d: squeezing process %d from %ld to %ld\n", - pr_id, p->p_pid, cursize, newsize); - vm_pageout_map_deactivate_pages(&p->p_vmspace->vm_map, newsize); - } /* end LIST_FOREACH procs */ - sx_sunlock(&allproc_lock); - } - - /* TODO --- make interval into a sysctl. */ - /* 6 seconds because VM recomputes totals every 5. */ - printf("jpager_td sleeping\n"); - tsleep(pr, 0, "-", 6 * hz); - } - - printf("Exiting jpager_td\n"); - kthread_exit(0); + kthread_exit(0); } -#endif /* * MPSAFE @@ -219,7 +252,7 @@ struct prison *pr, *tpr; struct jail j; struct jail_attach_args jaa; - /* struct proc *j_pager_proc = NULL; */ + struct proc *j_pager_proc = NULL; int vfslocked, error, tryprid; error = copyin(uap->jail, &j, sizeof(j)); @@ -275,10 +308,10 @@ prisoncount++; mtx_unlock(&allprison_mtx); - /* if (kthread_create(jpager_td, pr, (void *) j_pager_proc, 0, 0, "jpager %d", pr->pr_id)) - goto e_dropprref; + if (kthread_create(jpager_td, pr, (void *) j_pager_proc, 0, 0, "jpager %d", pr->pr_id)) + goto e_dropprref; KASSERT(j_pager_proc != NULL, ("NULL j_pager_proc")); - pr->pr_pager = j_pager_proc; */ + pr->pr_pager = j_pager_proc; error = jail_attach(td, &jaa); if (error) @@ -404,8 +437,7 @@ mtx_unlock(&allprison_mtx); /* Tell scheduler, pager to die. No need to wait. */ -/* *pr->pr_scheduler_flags_ptr = J_SCHED_TD_DIE; - *pr->pr_pager_flags_ptr = J_PAGER_TD_DIE; */ + *pr->pr_pager_flags_ptr = J_PAGER_TD_DIE; wakeup(pr); TASK_INIT(&pr->pr_task, 0, prison_complete, pr); @@ -523,40 +555,36 @@ vm_pindex_t prison_memory(struct prison *pr) { - struct proc *p; - u_int mem_used = 0; - - /* TODO: cut this to search only procs in given jail. */ - FOREACH_PROC_IN_SYSTEM(p) { - if (!jailed(p->p_ucred) || - (pr != p->p_ucred->cr_prison)) { - continue; - } - - /* Get memory usage (see vm/vm_map.h). */ - /* TODO maybe use vm_swrss? */ - mem_used += (p->p_vmspace)->vm_tsize; /* text size (pages) */ - mem_used += (p->p_vmspace)->vm_dsize; /* data size (pages) */ - mem_used += (p->p_vmspace)->vm_ssize; /* stack size (pages) */ - } - - /* Convert to bytes, cache (maybe unncessary?). */ - mem_used *= PAGE_SIZE; - /* mtx_lock(&pr->pr_mtx); - pr->pr_mem_usage = mem_used; - mtx_unlock(&pr->pr_mtx); */ - return mem_used; + struct proc *p; + u_int mem_used = 0; + + /* TODO: cut this to search only procs in given jail. */ + FOREACH_PROC_IN_SYSTEM(p) { + if (!jailed(p->p_ucred) || + (pr != p->p_ucred->cr_prison)) { + continue; + } + + /* Get memory usage (see vm/vm_map.h). */ + /* TODO maybe use vm_swrss? */ + mem_used += (p->p_vmspace)->vm_tsize; /* text size (pages) */ + mem_used += (p->p_vmspace)->vm_dsize; /* data size (pages) */ + mem_used += (p->p_vmspace)->vm_ssize; /* stack size (pages) */ + } + + mem_used *= PAGE_SIZE; + return mem_used; } /* Given credential, return permitted memory usage in bytes. */ vm_pindex_t prison_memory_limit(struct prison *pr) { - vm_pindex_t memlimit; - mtx_lock(&pr->pr_mtx); - memlimit = (vm_pindex_t) pr->pr_mem_limit; - mtx_unlock(&pr->pr_mtx); - return memlimit; + vm_pindex_t memlimit; + mtx_lock(&pr->pr_mtx); + memlimit = (vm_pindex_t) pr->pr_mem_limit; + mtx_unlock(&pr->pr_mtx); + return memlimit; } /* @@ -689,6 +717,52 @@ } } +/* + * Change resource limit for a prison. + * + * unsigned int jid: id of jail to mess with + * + * int cpushares: 0 -> remove prison from cpu limits + * -1 -> don't change existing shares + * >0 -> set cpu shares + * + * int memlimit: 0 -> remove prison from mem limits + * -1 -> don't change existing limit + * >1 -> set memory limit (bytes) + * + * TODO: might this be better handled via a writable + * sysctl than with a new syscall? + */ +int +jail_set_resource_limits(struct thread *td, struct jail_set_resource_limits_args *uap) +{ + struct prison *pr; + int error; + + error = suser(td); + if (error) + return (error); + + mtx_lock(&allprison_mtx); + LIST_FOREACH(pr, &allprison, pr_list) { + if (pr->pr_id == uap->jid) + break; + } + if (NULL == pr) { + mtx_unlock(&allprison_mtx); + return 1; + } + + mtx_lock(&pr->pr_mtx); + if (-1 != uap->cpushares) + pr->pr_sched_shares = uap->cpushares; + if (-1 != uap->memlimit) + pr->pr_mem_limit = uap->memlimit; + mtx_unlock(&pr->pr_mtx); + mtx_unlock(&allprison_mtx); + return 0; +} + static int sysctl_jail_list(SYSCTL_HANDLER_ARGS) { From owner-p4-projects@FreeBSD.ORG Mon Aug 21 07:30:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5221616A4E6; Mon, 21 Aug 2006 07:30:52 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1323A16A4DE for ; Mon, 21 Aug 2006 07:30:52 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C95FA43D6A for ; Mon, 21 Aug 2006 07:30:51 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L7UpeT037536 for ; Mon, 21 Aug 2006 07:30:51 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L7UpOL037532 for perforce@freebsd.org; Mon, 21 Aug 2006 07:30:51 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 07:30:51 GMT Message-Id: <200608210730.k7L7UpOL037532@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104659 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 07:30:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=104659 Change 104659 by cdjones@cdjones-impulse on 2006/08/21 07:30:17 Rename sched_hier.c to sched_4bsd.c Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_4bsd.c#6 integrate Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_4bsd.c#6 (text+ko) ==== @@ -41,6 +41,7 @@ #include #include +#include #include #include #include @@ -176,6 +177,11 @@ static int forward_wakeup(int cpunum); #endif +static uint32_t total_cpu_sched_shares; +static u_int total_est_cpu; +extern struct mtx allprison_mtx; +extern int prisoncount; + static struct kproc_desc sched_kp = { "schedcpu", schedcpu_thread, @@ -289,6 +295,18 @@ &sched_kgfollowons, 0, "number of followons done in a ksegrp"); +static int sched_limitjailcpu = 0; +SYSCTL_INT(_kern_sched, OID_AUTO, limit_jail_cpu, + CTLFLAG_RW, + &sched_limitjailcpu, 0, + "limit jailed process cpu usage"); + +static int sched_unjailedProcessShares = 0; +SYSCTL_INT(_kern_sched, OID_AUTO, system_cpu_shares, + CTLTYPE_INT | CTLFLAG_RW, + &sched_unjailedProcessShares, 0, + "number of shares to allocate to unjailed processes"); + static __inline void sched_load_add(void) { @@ -435,10 +453,23 @@ struct proc *p; struct kse *ke; struct ksegrp *kg; + struct prison *pr; int awake, realstathz; realstathz = stathz ? stathz : hz; + /* + * Need to acquire each jail's mutex and hold throughout to keep + * everything out while we recalculate per-jail CPU usage. + * TODO: this is excessively icky. + */ sx_slock(&allproc_lock); + mtx_lock(&allprison_mtx); + if (prisoncount) { + LIST_FOREACH(pr, &allprison, pr_list) { + pr->pr_estcpu = 0; + } + } + total_est_cpu = 0; FOREACH_PROC_IN_SYSTEM(p) { /* * Prevent state changes and protect run queue. @@ -523,6 +554,12 @@ if (kg->kg_slptime > 1) continue; kg->kg_estcpu = decay_cpu(loadfac, kg->kg_estcpu); + total_est_cpu += kg->kg_estcpu; + if (sched_limitjailcpu && + NULL != kg->kg_proc->p_ucred && + NULL != kg->kg_proc->p_ucred->cr_prison) + kg->kg_proc->p_ucred->cr_prison->pr_estcpu += + kg->kg_estcpu; resetpriority(kg); FOREACH_THREAD_IN_GROUP(kg, td) { resetpriority_thread(td, kg); @@ -530,6 +567,7 @@ } /* end of ksegrp loop */ mtx_unlock_spin(&sched_lock); } /* end of process loop */ + mtx_unlock(&allprison_mtx); sx_sunlock(&allproc_lock); } @@ -540,8 +578,29 @@ schedcpu_thread(void) { int nowake; + struct prison *pr; + u_int32_t shares = 0; for (;;) { + if (sched_limitjailcpu) { + /* + * Update total jail CPU shares in case they've changed. + * Safe to read pr_sched_shares without mutex because + * in worst case, we get a bogus value which will be + * corrected on the next pass. + * + * TODO: this should be done by forcing a recalculation + * when jail CPU shares are added / changed, rather than + * doing it every secondc. + */ + + shares = sched_unjailedProcessShares; + LIST_FOREACH(pr, &allprison, pr_list) { + shares += pr->pr_sched_shares; + } + total_cpu_sched_shares = shares; + } + schedcpu(); tsleep(&nowake, 0, "-", hz); } @@ -579,12 +638,43 @@ resetpriority(struct ksegrp *kg) { register unsigned int newpriority; + struct prison *pr = NULL; + if (NULL != kg->kg_proc->p_ucred) + pr = kg->kg_proc->p_ucred->cr_prison; if (kg->kg_pri_class == PRI_TIMESHARE) { newpriority = PUSER + kg->kg_estcpu / INVERSE_ESTCPU_WEIGHT + - NICE_WEIGHT * (kg->kg_proc->p_nice - PRIO_MIN); - newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), - PRI_MAX_TIMESHARE); + NICE_WEIGHT * (kg->kg_proc->p_nice - PRIO_MIN); + if (sched_limitjailcpu && NULL != pr) { + /* + * Skew the priority by the jail's share of CPU resources. + * The unjailed processes get half the CPU time. + * + * TODO: this is a hard limit. We should really also have + * soft limits available. Also, the amount of CPU time + * reserved to unjailed processes really should be sysctl'd. + */ + register unsigned int np = newpriority; + register unsigned int skew; + skew = pr->pr_estcpu * total_cpu_sched_shares; + skew /= max(total_est_cpu, 1) * max(pr->pr_sched_shares, 1); + if (skew > 0) { + /* wait your turn until your cpu usage's proportionate */ + newpriority = PRI_MAX_IDLE; + } else { + newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), + PRI_MAX_TIMESHARE); + } + printf("skew KSE %p (%d / %d cpu, %d / %d shares) from %d to %d\n", + &kg, pr->pr_estcpu, total_est_cpu, + pr->pr_sched_shares, + total_cpu_sched_shares, + np, newpriority); + } else { + newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), + PRI_MAX_TIMESHARE); + } + kg->kg_user_pri = newpriority; } } From owner-p4-projects@FreeBSD.ORG Mon Aug 21 08:35:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C055A16A4E5; Mon, 21 Aug 2006 08:35:13 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7A13B16A4E0 for ; Mon, 21 Aug 2006 08:35:13 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1D58A43D53 for ; Mon, 21 Aug 2006 08:35:13 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L8ZCeS043851 for ; Mon, 21 Aug 2006 08:35:12 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L8ZC2R043848 for perforce@freebsd.org; Mon, 21 Aug 2006 08:35:12 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 08:35:12 GMT Message-Id: <200608210835.k7L8ZC2R043848@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104663 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 08:35:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=104663 Change 104663 by cdjones@cdjones-impulse on 2006/08/21 08:35:04 Mission accomplished: pager thread now stops when it's appropriate. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#24 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/jail.h#20 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#24 (text+ko) ==== @@ -156,17 +156,21 @@ break; if (jail_limit_memory && pr->pr_mem_limit) { - /* TODO: consider whether it might be better to start + /* + * TODO: consider whether it might be better to start * pushing back when we approach the limit, rather than * when we hit it. + * */ - limit = (long) prison_memory_limit(pr); - usage = (long) prison_memory(pr); + limit = prison_memory_limit(pr); + usage = prison_memory(pr); - /* The logic from vm_daemon() really needs to go here. - * Problem: we want to push things below their rlimits. + /* + * The logic from vm_daemon() really needs to go here. + * Problem: we want to push things below their rlimits, + * and vm_daemon doesn't do that. It'd be better to + * refactor vm_daemon to fit, but this'll do for now. * - * TODO: refactor vm_daemon to optionally act on specific jails? */ printf("jpager/%d: memory %ld / %ld bytes\n", @@ -213,20 +217,23 @@ */ /* TODO: this arbitrarily reduces each process's space by - * 5% (until it's completely swapped out) while + * 6.25% (until it's completely swapped out) while * we're under memory pressure. A better way would be * to either hit large processes first, or to hit the * least-active processes first, or go proportionally, * or .... */ - newsize = cursize = (long) vmspace_resident_count(p->p_vmspace); - newsize -= newsize / 20; + newsize = cursize = vmspace_resident_count(p->p_vmspace); + newsize -= newsize / 16; if (cursize < 0) newsize = 0; PROC_UNLOCK(p); printf("jpager/%d: squeezing process %d from %ld to %ld\n", pr_id, p->p_pid, cursize, newsize); vm_pageout_map_deactivate_pages(&p->p_vmspace->vm_map, newsize); + printf("jpager/%d: squeezed process %d from %ld to %ld (wanted %ld)\n", + pr_id, p->p_pid, cursize, + vmspace_resident_count(p->p_vmspace), newsize); } /* end LIST_FOREACH procs */ sx_sunlock(&allproc_lock); } @@ -552,32 +559,31 @@ } /* Given credential, return memory usage in bytes. */ -vm_pindex_t +long prison_memory(struct prison *pr) { struct proc *p; - u_int mem_used = 0; + long mem_used = 0; - /* TODO: cut this to search only procs in given jail. */ + /* + * TODO: this is a really bad way of doing the + * search, as we end up going across all processes + * for each jail. It'd be more efficient to just do + * this once in a period and update the relevant jail. + * + */ FOREACH_PROC_IN_SYSTEM(p) { if (!jailed(p->p_ucred) || - (pr != p->p_ucred->cr_prison)) { + (pr != p->p_ucred->cr_prison)) continue; - } - - /* Get memory usage (see vm/vm_map.h). */ - /* TODO maybe use vm_swrss? */ - mem_used += (p->p_vmspace)->vm_tsize; /* text size (pages) */ - mem_used += (p->p_vmspace)->vm_dsize; /* data size (pages) */ - mem_used += (p->p_vmspace)->vm_ssize; /* stack size (pages) */ + mem_used += vmspace_resident_count(p->p_vmspace); } - - mem_used *= PAGE_SIZE; + mem_used *= PAGE_SIZE; return mem_used; } /* Given credential, return permitted memory usage in bytes. */ -vm_pindex_t +long prison_memory_limit(struct prison *pr) { vm_pindex_t memlimit; ==== //depot/projects/soc2006/cdjones_jail/src/sys/sys/jail.h#20 (text+ko) ==== @@ -134,8 +134,8 @@ void prison_hold(struct prison *pr); int prison_if(struct ucred *cred, struct sockaddr *sa); int prison_ip(struct ucred *cred, int flag, u_int32_t *ip); -vm_pindex_t prison_memory(struct prison *pr); -vm_pindex_t prison_memory_limit(struct prison *pr); +long prison_memory(struct prison *pr); +long prison_memory_limit(struct prison *pr); void prison_remote_ip(struct ucred *cred, int flags, u_int32_t *ip); #endif /* _KERNEL */ From owner-p4-projects@FreeBSD.ORG Mon Aug 21 08:44:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0D25D16A50A; Mon, 21 Aug 2006 08:44:26 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9491816A501 for ; Mon, 21 Aug 2006 08:44:25 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2637643D46 for ; Mon, 21 Aug 2006 08:44:25 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L8iOfJ044342 for ; Mon, 21 Aug 2006 08:44:25 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L8iOXS044339 for perforce@freebsd.org; Mon, 21 Aug 2006 08:44:24 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 08:44:24 GMT Message-Id: <200608210844.k7L8iOXS044339@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104664 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 08:44:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=104664 Change 104664 by cdjones@cdjones-impulse on 2006/08/21 08:43:45 Finish up the merge of sched_hier back into sched_4bsd. As a bonus, get rid of some debug output. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/conf/NOTES#5 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/conf/options#4 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_switch.c#7 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_4bsd.c#7 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_hier.c#20 delete Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/conf/NOTES#5 (text+ko) ==== @@ -171,11 +171,7 @@ # advantages for UP as well. It is intended to replace the 4BSD scheduler # over time. # -# SCHED_HIER is an experimental scheduler intended to allow CPU share -# limiting for jails. -# options SCHED_4BSD -#options SCHED_HIER #options SCHED_ULE ##################################################################### ==== //depot/projects/soc2006/cdjones_jail/src/sys/conf/options#4 (text+ko) ==== @@ -126,7 +126,6 @@ PUC_FASTINTR opt_puc.h QUOTA SCHED_4BSD opt_sched.h -SCHED_HIER opt_sched.h SCHED_ULE opt_sched.h SHOW_BUSYBUFS SLEEPQUEUE_PROFILING ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_switch.c#7 (text+ko) ==== @@ -105,7 +105,7 @@ #if defined(SMP) && (defined(__i386__) || defined(__amd64__)) #include #endif -#if defined(SMP) && (defined(SCHED_4BSD) || defined(SCHED_HIER)) +#if defined(SMP) && defined(SCHED_4BSD) #include #endif @@ -234,7 +234,7 @@ } } -#if (defined(SCHED_4BSD) || defined(SCHED_HIER)) +#if defined(SCHED_4BSD) /* * Remove a thread from its KSEGRP's run queue. * This in turn may remove it from a KSE if it was already assigned @@ -856,7 +856,7 @@ return (0); } -#if defined(SMP) && (defined(SCHED_4BSD) || defined(SCHED_HIER)) +#if defined(SMP) && defined(SCHED_4BSD) int runq_fuzz = 1; SYSCTL_INT(_kern_sched, OID_AUTO, runq_fuzz, CTLFLAG_RW, &runq_fuzz, 0, ""); #endif @@ -874,7 +874,7 @@ mtx_assert(&sched_lock, MA_OWNED); while ((pri = runq_findbit(rq)) != -1) { rqh = &rq->rq_queues[pri]; -#if defined(SMP) && (defined(SCHED_4BSD) || defined(SCHED_HIER)) +#if defined(SMP) && defined(SCHED_4BSD) /* fuzz == 1 is normal.. 0 or less are ignored */ if (runq_fuzz > 1) { /* ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_4bsd.c#7 (text+ko) ==== @@ -665,11 +665,6 @@ newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), PRI_MAX_TIMESHARE); } - printf("skew KSE %p (%d / %d cpu, %d / %d shares) from %d to %d\n", - &kg, pr->pr_estcpu, total_est_cpu, - pr->pr_sched_shares, - total_cpu_sched_shares, - np, newpriority); } else { newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), PRI_MAX_TIMESHARE); From owner-p4-projects@FreeBSD.ORG Mon Aug 21 08:45:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 487DC16A4DE; Mon, 21 Aug 2006 08:45:27 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0062916A4DA for ; Mon, 21 Aug 2006 08:45:26 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C2E6D43D4C for ; Mon, 21 Aug 2006 08:45:26 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L8jQkk044416 for ; Mon, 21 Aug 2006 08:45:26 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L8jQZs044413 for perforce@freebsd.org; Mon, 21 Aug 2006 08:45:26 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 08:45:26 GMT Message-Id: <200608210845.k7L8jQZs044413@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104665 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 08:45:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=104665 Change 104665 by cdjones@cdjones-impulse on 2006/08/21 08:44:56 Get rid of more debugging output. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#25 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#25 (text+ko) ==== @@ -173,13 +173,7 @@ * */ - printf("jpager/%d: memory %ld / %ld bytes\n", - pr_id, usage, limit); - if ((usage - limit) > 0) { - printf("jpager/%d: overcommitted by %ld bytes (%f percent)\n", - pr_id, usage - limit, - (double) 100 * ((double) (usage - limit) / (double) limit)); sx_slock(&allproc_lock); LIST_FOREACH(p, &allproc, p_list) { @@ -228,17 +222,11 @@ if (cursize < 0) newsize = 0; PROC_UNLOCK(p); - printf("jpager/%d: squeezing process %d from %ld to %ld\n", - pr_id, p->p_pid, cursize, newsize); vm_pageout_map_deactivate_pages(&p->p_vmspace->vm_map, newsize); - printf("jpager/%d: squeezed process %d from %ld to %ld (wanted %ld)\n", - pr_id, p->p_pid, cursize, - vmspace_resident_count(p->p_vmspace), newsize); } /* end LIST_FOREACH procs */ sx_sunlock(&allproc_lock); } } - tsleep(pr, 0, "-", jail_memory_pager_interval * hz); } @@ -329,7 +317,10 @@ td->td_retval[0] = jaa.jid; return (0); e_dropprref: - /* TODO: kill pager, scheduler if they've started. */ + if (j_pager_proc != NULL) { + *pr->pr_pager_flags_ptr = J_PAGER_TD_DIE; + wakeup(pr); + } mtx_lock(&allprison_mtx); LIST_REMOVE(pr, pr_list); prisoncount--; From owner-p4-projects@FreeBSD.ORG Mon Aug 21 09:33:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E65D016A4E5; Mon, 21 Aug 2006 09:33:32 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A906A16A4DF for ; Mon, 21 Aug 2006 09:33:32 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5C67243D6D for ; Mon, 21 Aug 2006 09:33:28 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L9XStc063833 for ; Mon, 21 Aug 2006 09:33:28 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L9XS6b063830 for perforce@freebsd.org; Mon, 21 Aug 2006 09:33:28 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 09:33:28 GMT Message-Id: <200608210933.k7L9XS6b063830@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104668 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 09:33:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=104668 Change 104668 by cdjones@cdjones_meanook on 2006/08/21 09:33:13 Info on how to try things out. Affected files ... .. //depot/projects/soc2006/cdjones_jail/README#2 edit .. //depot/projects/soc2006/cdjones_jail/docs/STATUS#1 add Differences ... ==== //depot/projects/soc2006/cdjones_jail/README#2 (text+ko) ==== @@ -1,1 +1,7 @@ Top-level readme for cdjones' SOC '06 project. + +NOTE: because this adds a syscall, there are some very important steps +you need to take to use this without making your libc.so unusable. +Follow the instructions in docs/INSTALL carefully. + +-- Chris Jones (cdjones@freebsd.org), 21 August 2006 From owner-p4-projects@FreeBSD.ORG Mon Aug 21 09:47:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 670C916A4E0; Mon, 21 Aug 2006 09:47:50 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 12B7A16A4DA for ; Mon, 21 Aug 2006 09:47:50 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8D9EE43D55 for ; Mon, 21 Aug 2006 09:47:46 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L9lkxq064865 for ; Mon, 21 Aug 2006 09:47:46 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L9lkeC064862 for perforce@freebsd.org; Mon, 21 Aug 2006 09:47:46 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 09:47:46 GMT Message-Id: <200608210947.k7L9lkeC064862@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104669 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 09:47:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=104669 Change 104669 by cdjones@cdjones_meanook on 2006/08/21 09:47:06 More info on how to use etc. Affected files ... .. //depot/projects/soc2006/cdjones_jail/docs/STATUS#2 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/docs/STATUS#2 (text+ko) ==== @@ -1,35 +1,40 @@ Memory Limits ============= -Jails can now have the amount of memory available to their processes' -resident sets (RSS) with arguments to the jail command (and shortly, the -jtune command once a jail is running). A kernel thread for each jail, -jpager_td, periodically traverses the processes in the jail and sums the -amount of memory being consumed by the jail; if that exceeds the pre-set -limit, jpager_td asks the virtual memory system to reclaim some of the -memory being used by the jail's processes. +Jails can now have the amount of memory available to their processes' +resident sets (RSS) with arguments to the jail command and the jtune +command. + +A kernel thread for each jail, jpager_td, periodically traverses the +processes in the jail and sums the amount of memory being consumed by +the jail; if the security.jail.limit_jail_memory sysctl is set and the +jail's memory exceeds the pre-set limit, jpager_td asks the virtual +memory system to reclaim some of the memory being used by the jail's +processes. -Currently, memory reclamation is based on a fraction of the process's -RSS and is applied to all of the processes in the jail (e.g. both a 30MB -Apache process and a 300KB shell might be asked to return 1/16 of their -RSS). This allows for short-term overcommits which return to the -established limit over time; a sysctl will allow tuning of how quickly -that return happens. +Currently, all processes in the jail are asked for 6.25% (1/16th) of +their resident set size. This means that both a 30MB Apache process and +a 300KB shell will be asked to return 1/16 of their RSS). This allows +for short-term overcommits which return to the established limit over +time; the security.jail.jail_pager_timeout sysctl determines how +frequently (in seconds) the pager thread checks memory usage. -Things to think about: progressive taxation of processes (e.g. charging -the 30MB Apache process a higher rate). +Things to think about for the future: progressive taxation of processes +(e.g. charging the 30MB Apache process a higher rate). CPU Limits ========== -CPU limiting is implemented by giving each jail a (user-changeable) -number of CPU shares and tracking the estimated CPU usage of the tasks -that run in that jail. If the ratio of the jail's estimated CPU usage to -total CPU usage exceeds the ratio of the jail's CPU shares to total CPU -shares outstanding, the jailed processes have their priorities decreased -until the ratio of actual usage (estimated CPU) drops below permitted -usage (shares). Unjailed processes are not subject to this regime. +CPU limiting is implemented by giving each jail a number of CPU shares +and tracking the estimated CPU usage of the tasks that run in that jail. +If the ratio of the jail's estimated CPU usage to total CPU usage +exceeds the ratio of the jail's CPU usage shares to total CPU usage +shares outstanding, the jailed processes have their priorities decreased +until the ratio of actual usage (estimated CPU) drops below permitted +usage (shares). In short, the more shares a jail has, the more often +its processes will run. Unjailed processes are not subject to this +regime. This system does not prevent a jailed process from monopolizing the CPU when there are no other runnable processes; rather, it only prevents a @@ -37,6 +42,13 @@ processes (in which case they will tend to share CPU time in proportion to their respective CPU share allocations). +The kern.sched.limit_jail_cpu sysctl enables jail CPU usage limits, and +the kern.sched.system_cpu_shares sysctl determines how many CPU usage +shares are attributed to unjailed processes. While they count towards +the total number of CPU usage shares outstanding on a system (and so +decrease the priority of jails), they do not affect the priority of +unjailed processes. + Future work could look at implementing a full-blown fair-share scheduler (see Kay & Lauder or Waldspurger). From owner-p4-projects@FreeBSD.ORG Mon Aug 21 09:48:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B607516A4E1; Mon, 21 Aug 2006 09:48:54 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8B9A116A4DA for ; Mon, 21 Aug 2006 09:48:54 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 754E043D6B for ; Mon, 21 Aug 2006 09:48:48 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7L9mmAU064968 for ; Mon, 21 Aug 2006 09:48:48 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7L9mmg2064965 for perforce@freebsd.org; Mon, 21 Aug 2006 09:48:48 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 09:48:48 GMT Message-Id: <200608210948.k7L9mmg2064965@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104670 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 09:48:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=104670 Change 104670 by cdjones@cdjones_meanook on 2006/08/21 09:47:57 Kill unused variables. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#26 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_4bsd.c#8 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/kern_jail.c#26 (text+ko) ==== @@ -147,7 +147,6 @@ struct thread *td; long limit, cursize, newsize, usage; int breakout; - int pr_id = pr->pr_id; int flags = J_PAGER_TD_ACTIVE; pr->pr_pager_flags_ptr = &flags; ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_4bsd.c#8 (text+ko) ==== @@ -654,7 +654,6 @@ * soft limits available. Also, the amount of CPU time * reserved to unjailed processes really should be sysctl'd. */ - register unsigned int np = newpriority; register unsigned int skew; skew = pr->pr_estcpu * total_cpu_sched_shares; skew /= max(total_est_cpu, 1) * max(pr->pr_sched_shares, 1); From owner-p4-projects@FreeBSD.ORG Mon Aug 21 10:22:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 18AF016A4E1; Mon, 21 Aug 2006 10:22:34 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CDFCF16A4DE for ; Mon, 21 Aug 2006 10:22:33 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4987343D5D for ; Mon, 21 Aug 2006 10:22:32 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LAMW1v068463 for ; Mon, 21 Aug 2006 10:22:32 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LAMWvC068454 for perforce@freebsd.org; Mon, 21 Aug 2006 10:22:32 GMT (envelope-from ryanb@FreeBSD.org) Date: Mon, 21 Aug 2006 10:22:32 GMT Message-Id: <200608211022.k7LAMWvC068454@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 104673 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 10:22:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=104673 Change 104673 by ryanb@ryanb_yuki on 2006/08/21 10:22:13 Integrate last minute minor cleanups from user branch. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/channel.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/channel.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#12 integrate Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/channel.c#3 (text+ko) ==== @@ -73,11 +73,17 @@ * * Clients should acquire this lock @b without holding any channel locks * before touching syncgroups or the main syncgroup list. - * - * @todo rename? */ struct mtx snd_pcm_syncgroups_mtx; MTX_SYSINIT(pcm_syncgroup, &snd_pcm_syncgroups_mtx, "PCM channel sync group lock", MTX_DEF); +/** + * @brief syncgroups' master list + * + * Each time a channel syncgroup is created, it's added to this list. This + * list should only be accessed with @sa snd_pcm_syncgroups_mtx held. + * + * See SNDCTL_DSP_SYNCGROUP for more information. + */ struct pcm_synclist snd_pcm_syncgroups = SLIST_HEAD_INITIALIZER(head); static int chn_buildfeeder(struct pcm_channel *c); @@ -864,16 +870,6 @@ c->bufsoft = bs; c->flags = 0; c->feederflags = 0; - - /* - * OSSv4 docs: "By default OSS will set the low water level equal - * to the fragment size which is optimal in most cases." - * - * @todo So what happens if user requests a new block size? Should - * this value be updated? (Will mail 4Front with a list of - * questions as project continues.) - */ - c->lw = sndbuf_getblksz(bs); c->sm = NULL; ret = ENODEV; @@ -1255,6 +1251,12 @@ goto out1; } + /* + * OSSv4 docs: "By default OSS will set the low water level equal + * to the fragment size which is optimal in most cases." + */ + c->lw = sndbuf_getblksz(bs); + chn_resetbuf(c); out1: KASSERT(sndbuf_getsize(bs) == 0 || ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/channel.h#3 (text+ko) ==== @@ -104,7 +104,14 @@ * wait on this cv for previous operation to finish. */ struct cv cv; - unsigned int lw; /**< select()/poll() low water mark */ + /** + * Low water mark for select()/poll(). + * + * This is initialized to the channel's fragment size, and will be + * overwritten if a new fragment size is set. Users may alter this + * value directly with the @c SNDCTL_DSP_LOW_WATER ioctl. + */ + unsigned int lw; /** * If part of a sync group, this will point to the syncmember * container. ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#12 (text+ko) ==== @@ -1228,12 +1228,7 @@ */ bzero((void *)&si->openedmidi, sizeof(si->openedmidi)); - /** - * @todo Ask about altering oss_sysinfo definition to use a macro - * for size of the filler field. Doing so would deviate - * in appearance from 4Front's soundcard.h, and userland - * developers may think that the macro is official. - * + /* * Si->filler is a reserved array, but according to docs each * element should be set to -1. */ From owner-p4-projects@FreeBSD.ORG Mon Aug 21 10:24:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B8E3816A4EF; Mon, 21 Aug 2006 10:24:40 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 63FBE16A4E6 for ; Mon, 21 Aug 2006 10:24:40 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6EACE43D45 for ; Mon, 21 Aug 2006 10:24:39 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LAOd6v068980 for ; Mon, 21 Aug 2006 10:24:39 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LAOZIO068977 for perforce@freebsd.org; Mon, 21 Aug 2006 10:24:35 GMT (envelope-from piso@freebsd.org) Date: Mon, 21 Aug 2006 10:24:35 GMT Message-Id: <200608211024.k7LAOZIO068977@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104674 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 10:24:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=104674 Change 104674 by piso@piso_newluxor on 2006/08/21 10:23:35 IFC Affected files ... .. //depot/projects/soc2006/intr_filter/Makefile#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/acpica/madt.c#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/pmap.c#7 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/support.S#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/trap.c#4 integrate .. //depot/projects/soc2006/intr_filter/amd64/include/pmap.h#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux.h#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_machdep.c#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_sysvec.c#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/syscalls.conf#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/soc2006/intr_filter/arm/arm/elf_trampoline.c#5 integrate .. //depot/projects/soc2006/intr_filter/arm/arm/mem.c#2 integrate .. //depot/projects/soc2006/intr_filter/arm/arm/pmap.c#4 integrate .. //depot/projects/soc2006/intr_filter/arm/arm/vm_machdep.c#3 integrate .. //depot/projects/soc2006/intr_filter/arm/at91/at91_st.c#6 integrate .. //depot/projects/soc2006/intr_filter/arm/at91/kb920x_machdep.c#5 integrate .. //depot/projects/soc2006/intr_filter/arm/include/pmap.h#2 integrate .. //depot/projects/soc2006/intr_filter/arm/include/sf_buf.h#2 integrate .. //depot/projects/soc2006/intr_filter/arm/include/vmparam.h#2 integrate .. //depot/projects/soc2006/intr_filter/arm/sa11x0/assabet_machdep.c#2 integrate .. //depot/projects/soc2006/intr_filter/arm/xscale/i80321/iq31244_machdep.c#2 integrate .. //depot/projects/soc2006/intr_filter/boot/Makefile#3 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/Makefile.inc#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/boot0/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/boot0iic/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/boot0iic/doit.c#2 delete .. //depot/projects/soc2006/intr_filter/boot/arm/at91/boot0iic/main.c#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/boot0spi/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/boot0spi/doit.c#2 delete .. //depot/projects/soc2006/intr_filter/boot/arm/at91/boot0spi/main.c#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootiic/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootiic/arm_init.S#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootiic/env_vars.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootiic/env_vars.h#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootiic/loader_prompt.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootiic/loader_prompt.h#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootiic/main.c#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootspi/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootspi/arm_init.S#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootspi/arm_init.s#2 delete .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootspi/env_vars.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootspi/env_vars.h#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootspi/loader_prompt.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootspi/loader_prompt.h#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/bootspi/main.c#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/at91rm9200.h#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/at91rm9200_lowlevel.h#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/delay.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/eeprom.c#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/eeprom.h#2 delete .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/emac.c#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/emac.h#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/emac_init.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/env_vars.c#2 delete .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/env_vars.h#2 delete .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/lib.h#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/lib_AT91RM9200.h#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/loader_prompt.c#2 delete .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/loader_prompt.h#2 delete .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/mci_device.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/mci_device.h#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/p_string.c#2 integrate .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/p_string.h#2 delete .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/reset.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/sd-card.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/sd-card.h#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/spi_flash.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/spi_flash.h#1 branch .. //depot/projects/soc2006/intr_filter/boot/arm/at91/libat91/xmodem.c#2 integrate .. //depot/projects/soc2006/intr_filter/boot/common/help.common#2 integrate .. //depot/projects/soc2006/intr_filter/boot/common/loader.8#2 integrate .. //depot/projects/soc2006/intr_filter/boot/ficl/arm/sysdep.c#1 branch .. //depot/projects/soc2006/intr_filter/boot/ficl/arm/sysdep.h#1 branch .. //depot/projects/soc2006/intr_filter/boot/forth/loader.conf#3 integrate .. //depot/projects/soc2006/intr_filter/cam/scsi/scsi_pass.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/freebsd32_misc.c#3 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/freebsd32_proto.h#4 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/freebsd32_syscall.h#4 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/freebsd32_syscalls.c#4 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/freebsd32_sysent.c#4 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/syscalls.conf#2 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/syscalls.master#4 integrate .. //depot/projects/soc2006/intr_filter/compat/linprocfs/linprocfs.c#4 integrate .. //depot/projects/soc2006/intr_filter/compat/linux/linux_emul.c#1 branch .. //depot/projects/soc2006/intr_filter/compat/linux/linux_emul.h#1 branch .. //depot/projects/soc2006/intr_filter/compat/linux/linux_futex.c#1 branch .. //depot/projects/soc2006/intr_filter/compat/linux/linux_futex.h#1 branch .. //depot/projects/soc2006/intr_filter/compat/linux/linux_misc.c#4 integrate .. //depot/projects/soc2006/intr_filter/compat/linux/linux_signal.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/linux/linux_time.c#1 branch .. //depot/projects/soc2006/intr_filter/compat/linux/linux_util.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/ndis/ntoskrnl_var.h#2 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_proto.h#4 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_stream.c#3 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_syscall.h#4 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_syscallnames.c#4 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_sysent.c#4 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/syscalls.conf#2 integrate .. //depot/projects/soc2006/intr_filter/conf/NOTES#7 integrate .. //depot/projects/soc2006/intr_filter/conf/files#6 integrate .. //depot/projects/soc2006/intr_filter/conf/files.amd64#4 integrate .. //depot/projects/soc2006/intr_filter/conf/files.i386#4 integrate .. //depot/projects/soc2006/intr_filter/conf/files.pc98#3 integrate .. //depot/projects/soc2006/intr_filter/conf/kern.post.mk#4 integrate .. //depot/projects/soc2006/intr_filter/conf/kmod.mk#3 integrate .. //depot/projects/soc2006/intr_filter/conf/options#5 integrate .. //depot/projects/soc2006/intr_filter/conf/options.arm#3 integrate .. //depot/projects/soc2006/intr_filter/contrib/dev/acpica/acfreebsd.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/fil.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_auth.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_auth.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_compat.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_fil.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_fil_freebsd.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_frag.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_ftp_pxy.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_log.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_nat.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_pptp_pxy.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_proxy.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_rcmd_pxy.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_scan.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_state.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_sync.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ip_sync.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/ipl.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ipfilter/netinet/mlfk_ipl.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/acpi_support/acpi_ibm.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/acpica/Osd/OsdMemory.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/acpica/acpi_dock.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/acpica/acpi_pci_link.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/acpica/acpi_video.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/arl/if_arlreg.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/ata-chipset.c#7 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/ata-disk.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.h#5 integrate .. //depot/projects/soc2006/intr_filter/dev/ath/if_ath.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/ath/if_athioctl.h#4 integrate .. //depot/projects/soc2006/intr_filter/dev/ath/if_athvar.h#4 integrate .. //depot/projects/soc2006/intr_filter/dev/bce/if_bce.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/bge/if_bge.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/bge/if_bgereg.h#4 integrate .. //depot/projects/soc2006/intr_filter/dev/em/if_em.c#11 integrate .. //depot/projects/soc2006/intr_filter/dev/em/if_em.h#4 integrate .. //depot/projects/soc2006/intr_filter/dev/em/if_em_hw.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/em/if_em_hw.h#3 integrate .. //depot/projects/soc2006/intr_filter/dev/exca/excareg.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/hme/if_hme.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ips/ips.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/isp.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/isp_ioctl.h#3 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/isp_pci.c#6 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/ispvar.h#3 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/rgephy.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/nfe/if_nfe.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/pccard/pccard_cis.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/pccbb/pccbb.c#6 integrate .. //depot/projects/soc2006/intr_filter/dev/pccbb/pccbb_pci.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/pccbb/pccbbreg.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sk/if_sk.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/emu10k1.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/emu10kx-pcm.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/emu10kx.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/emu10kx.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/ich.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/stge/if_stge.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/ti/if_ti.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/usb_port.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/usbdevs#5 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/uscanner.c#3 integrate .. //depot/projects/soc2006/intr_filter/fs/msdosfs/denode.h#2 integrate .. //depot/projects/soc2006/intr_filter/fs/nwfs/nwfs_io.c#2 integrate .. //depot/projects/soc2006/intr_filter/fs/smbfs/smbfs_io.c#2 integrate .. //depot/projects/soc2006/intr_filter/geom/eli/g_eli.c#3 integrate .. //depot/projects/soc2006/intr_filter/geom/eli/g_eli.h#2 integrate .. //depot/projects/soc2006/intr_filter/geom/eli/g_eli_ctl.c#2 integrate .. //depot/projects/soc2006/intr_filter/geom/geom_gpt.c#3 integrate .. //depot/projects/soc2006/intr_filter/geom/label/g_label.c#2 integrate .. //depot/projects/soc2006/intr_filter/geom/label/g_label_msdosfs.c#2 integrate .. //depot/projects/soc2006/intr_filter/geom/label/g_label_msdosfs.h#1 branch .. //depot/projects/soc2006/intr_filter/geom/mirror/g_mirror.c#4 integrate .. //depot/projects/soc2006/intr_filter/geom/raid3/g_raid3.c#4 integrate .. //depot/projects/soc2006/intr_filter/geom/vinum/geom_vinum_raid5.h#2 integrate .. //depot/projects/soc2006/intr_filter/i386/acpica/acpi_machdep.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/acpica/acpi_wakeup.c#4 integrate .. //depot/projects/soc2006/intr_filter/i386/acpica/madt.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/conf/XBOX#4 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/machdep.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/pmap.c#6 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/support.s#2 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/trap.c#4 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_isc_syscall.h#3 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_isc_sysent.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_proto.h#4 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_syscall.h#4 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_sysent.c#4 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_xenix.h#4 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_xenix_syscall.h#4 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_xenix_sysent.c#4 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/syscalls.conf#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/syscalls.isc.conf#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/syscalls.xenix.conf#2 integrate .. //depot/projects/soc2006/intr_filter/i386/include/pmap.h#2 integrate .. //depot/projects/soc2006/intr_filter/i386/isa/clock.c#6 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux.h#2 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_dummy.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_machdep.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_proto.h#7 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_syscall.h#7 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_sysent.c#7 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_sysvec.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/syscalls.conf#2 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/syscalls.master#7 integrate .. //depot/projects/soc2006/intr_filter/i386/xbox/xbox.c#2 integrate .. //depot/projects/soc2006/intr_filter/ia64/include/pmap.h#2 integrate .. //depot/projects/soc2006/intr_filter/kern/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/kern/init_sysent.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_exec.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_fork.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_lock.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_mutex.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_subr.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_sx.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_time.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/makesyscalls.sh#3 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_turnstile.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/sys_process.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/syscalls.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/syscalls.master#5 integrate .. //depot/projects/soc2006/intr_filter/kern/systrace_args.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_proto.c#2 delete .. //depot/projects/soc2006/intr_filter/kern/uipc_sem.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_socket.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_syscalls.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_usrreq.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_aio.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_bio.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_lookup.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_subr.c#5 integrate .. //depot/projects/soc2006/intr_filter/libkern/strstr.c#1 branch .. //depot/projects/soc2006/intr_filter/modules/Makefile#6 integrate .. //depot/projects/soc2006/intr_filter/modules/if_ef/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/if_ppp/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/linprocfs/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/linsysfs/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/linux/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/netgraph/mppc/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/sound/sound/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/net/bpf.c#5 integrate .. //depot/projects/soc2006/intr_filter/net/bridgestp.c#3 integrate .. //depot/projects/soc2006/intr_filter/net/if_bridge.c#6 integrate .. //depot/projects/soc2006/intr_filter/net/if_tun.c#3 integrate .. //depot/projects/soc2006/intr_filter/net/if_vlan.c#6 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_input.c#3 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_ioctl.c#3 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_ioctl.h#3 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_output.c#3 integrate .. //depot/projects/soc2006/intr_filter/netgraph/ng_pppoe.c#2 integrate .. //depot/projects/soc2006/intr_filter/netgraph/ng_pppoe.h#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_fastfwd.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_fw.h#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_fw2.c#5 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_input.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_output.c#3 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_input.c#4 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_subr.c#3 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_timer.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_timer.h#2 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/nfs_bio.c#2 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/nfs_lock.c#2 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/nfs_vfsops.c#2 integrate .. //depot/projects/soc2006/intr_filter/pc98/include/md_var.h#2 integrate .. //depot/projects/soc2006/intr_filter/pc98/pc98/pc98_machdep.c#2 integrate .. //depot/projects/soc2006/intr_filter/pci/agp.c#2 integrate .. //depot/projects/soc2006/intr_filter/pci/if_xl.c#5 integrate .. //depot/projects/soc2006/intr_filter/pci/nfsmb.c#2 integrate .. //depot/projects/soc2006/intr_filter/security/mac_biba/mac_biba.c#3 integrate .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/pmap.c#4 integrate .. //depot/projects/soc2006/intr_filter/sys/dirent.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/domain.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/eventhandler.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/imgact.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/libkern.h#3 integrate .. //depot/projects/soc2006/intr_filter/sys/lockmgr.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/mac_policy.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/param.h#3 integrate .. //depot/projects/soc2006/intr_filter/sys/sx.h#3 integrate .. //depot/projects/soc2006/intr_filter/sys/syscall.h#4 integrate .. //depot/projects/soc2006/intr_filter/sys/syscall.mk#4 integrate .. //depot/projects/soc2006/intr_filter/sys/sysctl.h#4 integrate .. //depot/projects/soc2006/intr_filter/sys/sysent.h#3 integrate .. //depot/projects/soc2006/intr_filter/sys/sysproto.h#4 integrate .. //depot/projects/soc2006/intr_filter/ufs/ufs/ufs_vnops.c#2 integrate .. //depot/projects/soc2006/intr_filter/vm/device_pager.c#2 integrate .. //depot/projects/soc2006/intr_filter/vm/swap_pager.c#3 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_fault.c#4 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_object.c#3 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_page.c#4 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_page.h#2 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_pageq.c#3 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_zeroidle.c#2 integrate .. //depot/projects/soc2006/intr_filter/vm/vnode_pager.c#2 integrate Differences ... ==== //depot/projects/soc2006/intr_filter/Makefile#3 (text+ko) ==== @@ -1,13 +1,11 @@ -# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.38 2006/08/10 06:29:43 imp Exp $ .include # The boot loader .if ${MK_BOOT} != "no" -.if ${MACHINE_ARCH} != "arm" SUBDIR= boot .endif -.endif # Directories to include in cscope name file and TAGS. CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ ==== //depot/projects/soc2006/intr_filter/amd64/acpica/madt.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.20 2006/03/27 15:59:48 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.21 2006/08/11 19:22:55 jhb Exp $"); #include #include @@ -203,15 +203,15 @@ /* * Map in the RSDP. Since ACPI uses AcpiOsMapMemory() which in turn - * calls pmap_mapdev() to find the RSDP, we assume that we can use - * pmap_mapdev() to map the RSDP. + * calls pmap_mapbios() to find the RSDP, we assume that we can use + * pmap_mapbios() to map the RSDP. */ if (AcpiOsGetRootPointer(ACPI_LOGICAL_ADDRESSING, &rsdp_ptr) != AE_OK) return (ENXIO); #ifdef __i386__ KASSERT(rsdp_ptr.Pointer.Physical < KERNLOAD, ("RSDP too high")); #endif - rsdp = pmap_mapdev(rsdp_ptr.Pointer.Physical, sizeof(RSDP_DESCRIPTOR)); + rsdp = pmap_mapbios(rsdp_ptr.Pointer.Physical, sizeof(RSDP_DESCRIPTOR)); if (rsdp == NULL) { if (bootverbose) printf("MADT: Failed to map RSDP\n"); @@ -261,7 +261,7 @@ break; madt_unmap_table(rsdt); } - pmap_unmapdev((vm_offset_t)rsdp, sizeof(RSDP_DESCRIPTOR)); + pmap_unmapbios((vm_offset_t)rsdp, sizeof(RSDP_DESCRIPTOR)); if (madt_physaddr == 0) { if (bootverbose) printf("MADT: No MADT table found\n"); @@ -335,7 +335,7 @@ madt_setup_local(void) { - madt = pmap_mapdev(madt_physaddr, madt_length); + madt = pmap_mapbios(madt_physaddr, madt_length); lapic_init((uintptr_t)madt->LocalApicAddress); printf("ACPI APIC Table: <%.*s %.*s>\n", (int)sizeof(madt->OemId), madt->OemId, ==== //depot/projects/soc2006/intr_filter/amd64/amd64/pmap.c#7 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.568 2006/08/01 19:06:04 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.571 2006/08/14 15:39:41 jhb Exp $"); /* * Manages physical address maps. @@ -665,6 +665,84 @@ * Low level helper routines..... ***************************************************/ +/* + * Determine the appropriate bits to set in a PTE or PDE for a specified + * caching mode. + */ +static int +pmap_cache_bits(int mode, boolean_t is_pde) +{ + int pat_flag, pat_index, cache_bits; + + /* The PAT bit is different for PTE's and PDE's. */ + pat_flag = is_pde ? PG_PDE_PAT : PG_PTE_PAT; + + /* If we don't support PAT, map extended modes to older ones. */ + if (!(cpu_feature & CPUID_PAT)) { + switch (mode) { + case PAT_UNCACHEABLE: + case PAT_WRITE_THROUGH: + case PAT_WRITE_BACK: + break; + case PAT_UNCACHED: + case PAT_WRITE_COMBINING: + case PAT_WRITE_PROTECTED: + mode = PAT_UNCACHEABLE; + break; + } + } + + /* Map the caching mode to a PAT index. */ + switch (mode) { +#ifdef PAT_WORKS + case PAT_UNCACHEABLE: + pat_index = 3; + break; + case PAT_WRITE_THROUGH: + pat_index = 1; + break; + case PAT_WRITE_BACK: + pat_index = 0; + break; + case PAT_UNCACHED: + pat_index = 2; + break; + case PAT_WRITE_COMBINING: + pat_index = 5; + break; + case PAT_WRITE_PROTECTED: + pat_index = 4; + break; +#else + case PAT_UNCACHED: + case PAT_UNCACHEABLE: + case PAT_WRITE_PROTECTED: + pat_index = 3; + break; + case PAT_WRITE_THROUGH: + pat_index = 1; + break; + case PAT_WRITE_BACK: + pat_index = 0; + break; + case PAT_WRITE_COMBINING: + pat_index = 2; + break; +#endif + default: + panic("Unknown caching mode %d\n", mode); + } + + /* Map the 3-bit index value into the PAT, PCD, and PWT bits. */ + cache_bits = 0; + if (pat_index & 0x4) + cache_bits |= pat_flag; + if (pat_index & 0x2) + cache_bits |= PG_NC_PCD; + if (pat_index & 0x1) + cache_bits |= PG_NC_PWT; + return (cache_bits); +} #ifdef SMP /* * For SMP, these functions have to use the IPI mechanism for coherence. @@ -962,6 +1040,15 @@ pte_store(pte, pa | PG_RW | PG_V | PG_G); } +PMAP_INLINE void +pmap_kenter_attr(vm_offset_t va, vm_paddr_t pa, int mode) +{ + pt_entry_t *pte; + + pte = vtopte(va); + pte_store(pte, pa | PG_RW | PG_V | PG_G | pmap_cache_bits(mode, 0)); +} + /* * Remove a page from the kernel pagetables. * Note: not SMP coherent. @@ -2506,7 +2593,6 @@ retry: p = vm_page_lookup(object, pindex); if (p != NULL) { - vm_page_lock_queues(); if (vm_page_sleep_if_busy(p, FALSE, "init4p")) goto retry; } else { @@ -2525,8 +2611,8 @@ p = vm_page_lookup(object, pindex); vm_page_lock_queues(); vm_page_wakeup(p); + vm_page_unlock_queues(); } - vm_page_unlock_queues(); ptepa = VM_PAGE_TO_PHYS(p); if (ptepa & (NBPDR - 1)) @@ -3102,6 +3188,46 @@ * Miscellaneous support routines follow */ +/* Adjust the cache mode for a 4KB page mapped via a PTE. */ +static __inline void +pmap_pte_attr(vm_offset_t va, int mode) +{ + pt_entry_t *pte; + u_int opte, npte; + + pte = vtopte(va); + + /* + * The cache mode bits are all in the low 32-bits of the + * PTE, so we can just spin on updating the low 32-bits. + */ + do { + opte = *(u_int *)pte; + npte = opte & ~(PG_PTE_PAT | PG_NC_PCD | PG_NC_PWT); + npte |= pmap_cache_bits(mode, 0); + } while (npte != opte && !atomic_cmpset_int((u_int *)pte, opte, npte)); +} + +/* Adjust the cache mode for a 2MB page mapped via a PDE. */ +static __inline void +pmap_pde_attr(vm_offset_t va, int mode) +{ + pd_entry_t *pde; + u_int opde, npde; + + pde = pmap_pde(kernel_pmap, va); + + /* + * The cache mode bits are all in the low 32-bits of the + * PDE, so we can just spin on updating the low 32-bits. + */ + do { + opde = *(u_int *)pde; + npde = opde & ~(PG_PDE_PAT | PG_NC_PCD | PG_NC_PWT); + npde |= pmap_cache_bits(mode, 1); + } while (npde != opde && !atomic_cmpset_int((u_int *)pde, opde, npde)); +} + /* * Map a set of physical memory pages into the kernel virtual * address space. Return a pointer to where it is mapped. This @@ -3109,12 +3235,15 @@ * NOT real memory. */ void * -pmap_mapdev(vm_paddr_t pa, vm_size_t size) +pmap_mapdev_attr(vm_paddr_t pa, vm_size_t size, int mode) { vm_offset_t va, tmpva, offset; - /* If this fits within the direct map window, use it */ - if (pa < dmaplimit && (pa + size) < dmaplimit) + /* + * If this fits within the direct map window and use WB caching + * mode, use the direct map. + */ + if (pa < dmaplimit && (pa + size) < dmaplimit && mode == PAT_WRITE_BACK) return ((void *)PHYS_TO_DMAP(pa)); offset = pa & PAGE_MASK; size = roundup(offset + size, PAGE_SIZE); @@ -3123,15 +3252,30 @@ panic("pmap_mapdev: Couldn't alloc kernel virtual memory"); pa = trunc_page(pa); for (tmpva = va; size > 0; ) { - pmap_kenter(tmpva, pa); + pmap_kenter_attr(tmpva, pa, mode); size -= PAGE_SIZE; tmpva += PAGE_SIZE; pa += PAGE_SIZE; } pmap_invalidate_range(kernel_pmap, va, tmpva); + pmap_invalidate_cache(); return ((void *)(va + offset)); } +void * +pmap_mapdev(vm_paddr_t pa, vm_size_t size) +{ + + return (pmap_mapdev_attr(pa, size, PAT_UNCACHEABLE)); +} + +void * +pmap_mapbios(vm_paddr_t pa, vm_size_t size) +{ + + return (pmap_mapdev_attr(pa, size, PAT_WRITE_BACK)); +} + void pmap_unmapdev(vm_offset_t va, vm_size_t size) { @@ -3149,6 +3293,73 @@ kmem_free(kernel_map, base, size); } +int +pmap_change_attr(va, size, mode) + vm_offset_t va; + vm_size_t size; + int mode; +{ + vm_offset_t base, offset, tmpva; + pd_entry_t *pde; + pt_entry_t *pte; + + base = va & PG_FRAME; + offset = va & PAGE_MASK; + size = roundup(offset + size, PAGE_SIZE); + + /* Only supported on kernel virtual addresses. */ + if (base <= VM_MAXUSER_ADDRESS) + return (EINVAL); + + /* + * XXX: We have to support tearing 2MB pages down into 4k pages if + * needed here. + */ + /* Pages that aren't mapped aren't supported. */ + for (tmpva = base; tmpva < (base + size); ) { + pde = pmap_pde(kernel_pmap, tmpva); + if (*pde == 0) + return (EINVAL); + if (*pde & PG_PS) { + /* Handle 2MB pages that are completely contained. */ + if (size >= NBPDR) { + tmpva += NBPDR; + continue; + } + return (EINVAL); + } + pte = vtopte(va); + if (*pte == 0) + return (EINVAL); + tmpva += PAGE_SIZE; + } + + /* + * Ok, all the pages exist, so run through them updating their + * cache mode. + */ + for (tmpva = base; size > 0; ) { + pde = pmap_pde(kernel_pmap, tmpva); + if (*pde & PG_PS) { + pmap_pde_attr(tmpva, mode); + tmpva += NBPDR; + size -= NBPDR; + } else { + pmap_pte_attr(tmpva, mode); + tmpva += PAGE_SIZE; + size -= PAGE_SIZE; + } + } + + /* + * Flush CPU caches to make sure any data isn't cached that shouldn't + * be, etc. + */ + pmap_invalidate_range(kernel_pmap, base, tmpva); + pmap_invalidate_cache(); + return (0); +} + /* * perform the pmap work for mincore */ ==== //depot/projects/soc2006/intr_filter/amd64/amd64/support.S#2 (text+ko) ==== @@ -27,7 +27,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/support.S,v 1.116 2005/09/27 18:32:46 peter Exp $ + * $FreeBSD: src/sys/amd64/amd64/support.S,v 1.119 2006/08/16 22:22:28 davidxu Exp $ */ #include "opt_ddb.h" ==== //depot/projects/soc2006/intr_filter/amd64/amd64/trap.c#4 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.307 2006/07/28 20:22:57 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.310 2006/08/14 19:53:53 alc Exp $"); /* * AMD64 Trap and System call handling @@ -535,7 +535,7 @@ { vm_offset_t va; struct vmspace *vm = NULL; - vm_map_t map = 0; + vm_map_t map; int rv = 0; vm_prot_t ftype; struct thread *td = curthread; @@ -566,8 +566,14 @@ map = &vm->vm_map; } + /* + * PGEX_I is defined only if the execute disable bit capability is + * supported and enabled. + */ if (frame->tf_err & PGEX_W) ftype = VM_PROT_WRITE; + else if ((frame->tf_err & PGEX_I) && pg_nx != 0) + ftype = VM_PROT_EXECUTE; else ftype = VM_PROT_READ; ==== //depot/projects/soc2006/intr_filter/amd64/include/pmap.h#3 (text+ko) ==== @@ -39,7 +39,7 @@ * * from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90 * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91 - * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.133 2006/08/02 16:24:23 alc Exp $ + * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.134 2006/08/11 19:22:56 jhb Exp $ */ #ifndef _MACHINE_PMAP_H_ @@ -302,14 +302,19 @@ extern vm_offset_t virtual_end; #define pmap_page_is_mapped(m) (!TAILQ_EMPTY(&(m)->md.pv_list)) +#define pmap_unmapbios(va, sz) pmap_unmapdev((va), (sz)) void pmap_bootstrap(vm_paddr_t *); +int pmap_change_attr(vm_offset_t, vm_size_t, int); void pmap_init_pat(void); void pmap_kenter(vm_offset_t va, vm_paddr_t pa); +void pmap_kenter_attr(vm_offset_t va, vm_paddr_t pa, int mode); void *pmap_kenter_temporary(vm_paddr_t pa, int i); vm_paddr_t pmap_kextract(vm_offset_t); void pmap_kremove(vm_offset_t); +void *pmap_mapbios(vm_paddr_t, vm_size_t); void *pmap_mapdev(vm_paddr_t, vm_size_t); +void *pmap_mapdev_attr(vm_paddr_t, vm_size_t, int); void pmap_unmapdev(vm_offset_t, vm_size_t); void pmap_invalidate_page(pmap_t, vm_offset_t); void pmap_invalidate_range(pmap_t, vm_offset_t, vm_offset_t); ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux.h#2 (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.2 2006/03/18 18:24:38 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_ @@ -495,6 +495,7 @@ extern int bsd_to_linux_signal[]; extern int linux_to_bsd_signal[]; +extern struct sysentvec elf_linux_sysvec; /* * Pluggable ioctl handlers @@ -527,6 +528,11 @@ #define LINUX_O_NDELAY LINUX_O_NONBLOCK #define LINUX_O_SYNC 010000 #define LINUX_FASYNC 020000 +#define LINUX_O_DIRECT 040000 /* direct disk access hint */ +#define LINUX_O_LARGEFILE 0100000 +#define LINUX_O_DIRECTORY 0200000 /* must be a directory */ +#define LINUX_O_NOFOLLOW 0400000 /* don't follow links */ +#define LINUX_O_NOATIME 01000000 #define LINUX_F_DUPFD 0 #define LINUX_F_GETFD 1 @@ -737,4 +743,100 @@ l_short revents; } __packed; +struct l_user_desc { + l_uint entry_number; + l_uint base_addr; + l_uint limit; + l_uint seg_32bit:1; + l_uint contents:2; + l_uint read_exec_only:1; + l_uint limit_in_pages:1; + l_uint seg_not_present:1; + l_uint useable:1; +}; + +struct l_desc_struct { + unsigned long a,b; +}; + + +#define LINUX_LOWERWORD 0x0000ffff + +/* + * macros which does the same thing as those in linux include/asm-um/ldt-i386.h + * these convert linux user-space descriptor to machine one + */ +#define LDT_entry_a(info) \ + ((((info)->base_addr & LINUX_LOWERWORD) << 16) | ((info)->limit & LINUX_LOWERWORD)) + +#define ENTRY_B_READ_EXEC_ONLY 9 +#define ENTRY_B_CONTENTS 10 +#define ENTRY_B_SEG_NOT_PRESENT 15 +#define ENTRY_B_BASE_ADDR 16 +#define ENTRY_B_USEABLE 20 +#define ENTRY_B_SEG32BIT 22 +#define ENTRY_B_LIMIT 23 + +#define LDT_entry_b(info) \ + (((info)->base_addr & 0xff000000) | \ + ((info)->limit & 0xf0000) | \ + ((info)->contents << ENTRY_B_CONTENTS) | \ + (((info)->seg_not_present == 0) << ENTRY_B_SEG_NOT_PRESENT) | \ + (((info)->base_addr & 0x00ff0000) >> ENTRY_B_BASE_ADDR) | \ + (((info)->read_exec_only == 0) << ENTRY_B_READ_EXEC_ONLY) | \ + ((info)->seg_32bit << ENTRY_B_SEG32BIT) | \ + ((info)->useable << ENTRY_B_USEABLE) | \ + ((info)->limit_in_pages << ENTRY_B_LIMIT) | 0x7000) + +#define LDT_empty(info) (\ + (info)->base_addr == 0 && \ + (info)->limit == 0 && \ + (info)->contents == 0 && \ + (info)->seg_not_present == 1 && \ + (info)->read_exec_only == 1 && \ + (info)->seg_32bit == 0 && \ + (info)->limit_in_pages == 0 && \ + (info)->useable == 0 ) + +/* macros for converting segments, they do the same as those in arch/i386/kernel/process.c */ +#define GET_BASE(desc) ( \ + (((desc)->a >> 16) & LINUX_LOWERWORD) | \ + (((desc)->b << 16) & 0x00ff0000) | \ + ( (desc)->b & 0xff000000) ) + +#define GET_LIMIT(desc) ( \ + ((desc)->a & LINUX_LOWERWORD) | \ + ((desc)->b & 0xf0000) ) + +#define GET_32BIT(desc) (((desc)->b >> ENTRY_B_SEG32BIT) & 1) +#define GET_CONTENTS(desc) (((desc)->b >> ENTRY_B_CONTENTS) & 3) +#define GET_WRITABLE(desc) (((desc)->b >> ENTRY_B_READ_EXEC_ONLY) & 1) +#define GET_LIMIT_PAGES(desc) (((desc)->b >> ENTRY_B_LIMIT) & 1) +#define GET_PRESENT(desc) (((desc)->b >> ENTRY_B_SEG_NOT_PRESENT) & 1) +#define GET_USEABLE(desc) (((desc)->b >> ENTRY_B_USEABLE) & 1) + +#define LINUX_CLOCK_REALTIME 0 +#define LINUX_CLOCK_MONOTONIC 1 +#define LINUX_CLOCK_PROCESS_CPUTIME_ID 2 +#define LINUX_CLOCK_THREAD_CPUTIME_ID 3 +#define LINUX_CLOCK_REALTIME_HR 4 +#define LINUX_CLOCK_MONOTONIC_HR 5 + +typedef int l_timer_t; +typedef int l_mqd_t; + +#define CLONE_VM 0x100 +#define CLONE_FS 0x200 +#define CLONE_FILES 0x400 +#define CLONE_SIGHAND 0x800 +#define CLONE_PID 0x1000 /* this flag does not exist in linux anymore */ +#define CLONE_PARENT 0x00008000 +#define CLONE_THREAD 0x10000 +#define CLONE_SETTLS 0x80000 +#define CLONE_CHILD_CLEARTID 0x00200000 +#define CLONE_CHILD_SETTID 0x01000000 +#define CLONE_PARENT_SETTID 0x00100000 + +#define THREADING_FLAGS (CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND) + #endif /* !_AMD64_LINUX_LINUX_H_ */ ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_dummy.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.3 2006/06/21 08:45:40 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.4 2006/08/15 12:54:29 netchild Exp $"); #include #include @@ -72,19 +72,13 @@ DUMMY(epoll_ctl); DUMMY(epoll_wait); DUMMY(remap_file_pages); -DUMMY(set_tid_address); DUMMY(timer_create); DUMMY(timer_settime); DUMMY(timer_gettime); DUMMY(timer_getoverrun); DUMMY(timer_delete); -DUMMY(clock_settime); -DUMMY(clock_gettime); -DUMMY(clock_getres); -DUMMY(clock_nanosleep); DUMMY(statfs64); DUMMY(fstatfs64); -DUMMY(tgkill); DUMMY(utimes); DUMMY(fadvise64_64); DUMMY(mbind); ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_machdep.c#2 (text+ko) ==== @@ -29,12 +29,13 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.12 2006/03/08 20:21:53 ups Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.15 2006/08/20 13:50:27 netchild Exp $"); #include #include #include #include +#include #include #include #include @@ -59,6 +60,7 @@ #include #include #include +#include struct l_old_select_argv { l_int nfds; @@ -210,6 +212,14 @@ free(path, M_TEMP); if (error == 0) error = kern_execve(td, &eargs, NULL); + if (error == 0) + /* linux process can exec fbsd one, dont attempt + * to create emuldata for such process using + * linux_proc_init, this leads to a panic on KASSERT + * because such process has p->p_emuldata == NULL + */ + if (td->td_proc->p_sysent == &elf_linux_sysvec) + error = linux_proc_init(td, 0, 0); return (error); } @@ -451,6 +461,10 @@ if (td->td_retval[1] == 1) td->td_retval[0] = 0; + error = linux_proc_init(td, td->td_retval[0], 0); + if (error) + return (error); + return (0); } @@ -469,15 +483,12 @@ /* Are we the child? */ if (td->td_retval[1] == 1) td->td_retval[0] = 0; + error = linux_proc_init(td, td->td_retval[0], 0); + if (error) + return (error); return (0); } -#define CLONE_VM 0x100 -#define CLONE_FS 0x200 -#define CLONE_FILES 0x400 -#define CLONE_SIGHAND 0x800 >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Aug 21 10:25:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D154816A4E1; Mon, 21 Aug 2006 10:25:44 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 92DF916A4DA for ; Mon, 21 Aug 2006 10:25:44 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8297E43D64 for ; Mon, 21 Aug 2006 10:25:41 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LAPfLT069130 for ; Mon, 21 Aug 2006 10:25:41 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LAPfeM069126 for perforce@freebsd.org; Mon, 21 Aug 2006 10:25:41 GMT (envelope-from ryanb@FreeBSD.org) Date: Mon, 21 Aug 2006 10:25:41 GMT Message-Id: <200608211025.k7LAPfeM069126@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 104675 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 10:25:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=104675 Change 104675 by ryanb@ryanb_yuki on 2006/08/21 10:25:01 Final IFC before generating SoC diff. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/dev/isp/isp_ioctl.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/isp/isp_pci.c#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/sys/sysctl.h#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_object.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_page.c#5 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_pageq.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_zeroidle.c#2 integrate Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/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/rbeasley_sound/sys/dev/isp/isp_pci.c#4 (text+ko) ==== @@ -30,7 +30,7 @@ * FreeBSD Version. */ #include -__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 #include @@ -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/rbeasley_sound/sys/sys/sysctl.h#4 (text+ko) ==== @@ -30,7 +30,7 @@ * SUCH DAMAGE. * * @(#)sysctl.h 8.1 (Berkeley) 6/2/93 - * $FreeBSD: src/sys/sys/sysctl.h,v 1.143 2006/08/12 23:33:10 obrien Exp $ + * $FreeBSD: src/sys/sys/sysctl.h,v 1.144 2006/08/21 06:27:27 alc Exp $ */ #ifndef _SYS_SYSCTL_H_ @@ -616,6 +616,8 @@ SYSCTL_DECL(_kern_ipc); SYSCTL_DECL(_sysctl); SYSCTL_DECL(_vm); +SYSCTL_DECL(_vm_stats); +SYSCTL_DECL(_vm_stats_misc); SYSCTL_DECL(_vfs); SYSCTL_DECL(_net); SYSCTL_DECL(_debug); ==== //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_object.c#3 (text+ko) ==== @@ -63,7 +63,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_object.c,v 1.366 2006/08/13 00:11:09 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_object.c,v 1.367 2006/08/21 06:27:28 alc Exp $"); #include #include @@ -144,7 +144,6 @@ struct vm_object kernel_object_store; struct vm_object kmem_object_store; -SYSCTL_DECL(_vm_stats); SYSCTL_NODE(_vm_stats, OID_AUTO, object, CTLFLAG_RD, 0, "VM object stats"); static long object_collapses; ==== //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_page.c#5 (text+ko) ==== @@ -97,7 +97,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_page.c,v 1.325 2006/08/13 00:11:09 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_page.c,v 1.326 2006/08/21 00:34:31 alc Exp $"); #include #include @@ -1131,14 +1131,6 @@ } panic("vm_page_free: freeing wired page"); } - - /* - * Clear the UNMANAGED flag when freeing an unmanaged page. - */ - if (m->flags & PG_UNMANAGED) { - m->flags &= ~PG_UNMANAGED; - } - if (m->hold_count != 0) { m->flags &= ~PG_ZERO; VM_PAGE_SETQUEUE2(m, PQ_HOLD); ==== //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_pageq.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_pageq.c,v 1.27 2006/06/23 16:44:24 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_pageq.c,v 1.28 2006/08/21 06:27:28 alc Exp $"); #include "opt_vmpage.h" @@ -59,7 +59,6 @@ static int pq_cachesize = 0; /* size of the cache in KB */ static int pq_cachenways = 0; /* associativity of the cache */ -SYSCTL_DECL(_vm_stats); SYSCTL_NODE(_vm_stats, OID_AUTO, pagequeue, CTLFLAG_RW, 0, "VM meter stats"); SYSCTL_INT(_vm_stats_pagequeue, OID_AUTO, page_colors, CTLFLAG_RD, &(PQ_NUMCOLORS), 0, "Number of colors in the page queue"); ==== //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_zeroidle.c#2 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_zeroidle.c,v 1.37 2006/04/17 18:20:38 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_zeroidle.c,v 1.39 2006/08/21 06:27:28 alc Exp $"); #include @@ -52,8 +52,6 @@ #include #include -SYSCTL_DECL(_vm_stats_misc); - static int cnt_prezero; SYSCTL_INT(_vm_stats_misc, OID_AUTO, cnt_prezero, CTLFLAG_RD, &cnt_prezero, 0, ""); @@ -99,7 +97,7 @@ return (1); } -static int +static void vm_page_zero_idle(void) { static int free_rover; @@ -122,7 +120,6 @@ } free_rover = (free_rover + PQ_PRIME2) & PQ_COLORMASK; mtx_unlock_spin(&vm_page_queue_free_mtx); - return (1); } /* Called by vm_page_free to hint that a new page is available. */ From owner-p4-projects@FreeBSD.ORG Mon Aug 21 11:05:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 56A2716A4E0; Mon, 21 Aug 2006 11:05:36 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0585D16A4E2 for ; Mon, 21 Aug 2006 11:05:36 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 48ACA43D60 for ; Mon, 21 Aug 2006 11:05:34 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LB5Ywv075517 for ; Mon, 21 Aug 2006 11:05:34 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LB5YKU075514 for perforce@freebsd.org; Mon, 21 Aug 2006 11:05:34 GMT (envelope-from cdjones@FreeBSD.org) Date: Mon, 21 Aug 2006 11:05:34 GMT Message-Id: <200608211105.k7LB5YKU075514@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 104680 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 11:05:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=104680 Change 104680 by cdjones@cdjones_meanook on 2006/08/21 11:05:23 Exeunt. Affected files ... .. //depot/projects/soc2006/cdjones_jail/README#3 edit .. //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_4bsd.c#9 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/README#3 (text+ko) ==== @@ -4,4 +4,8 @@ you need to take to use this without making your libc.so unusable. Follow the instructions in docs/INSTALL carefully. +The work I've done is licensed under the current BSD license. This +project was brought to you with the kind help of Google's Summer of +Code, Kip Macy, and the Planet Smashers. + -- Chris Jones (cdjones@freebsd.org), 21 August 2006 ==== //depot/projects/soc2006/cdjones_jail/src/sys/kern/sched_4bsd.c#9 (text+ko) ==== @@ -659,7 +659,7 @@ skew /= max(total_est_cpu, 1) * max(pr->pr_sched_shares, 1); if (skew > 0) { /* wait your turn until your cpu usage's proportionate */ - newpriority = PRI_MAX_IDLE; + newpriority = PRI_MAX_IDLE - 1; } else { newpriority = min(max(newpriority, PRI_MIN_TIMESHARE), PRI_MAX_TIMESHARE); From owner-p4-projects@FreeBSD.ORG Mon Aug 21 12:18:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 13AF416A4DF; Mon, 21 Aug 2006 12:18:10 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C886F16A4DD for ; Mon, 21 Aug 2006 12:18:09 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9BA5243D67 for ; Mon, 21 Aug 2006 12:18:05 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LCI5u8080665 for ; Mon, 21 Aug 2006 12:18:05 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LCI57T080662 for perforce@freebsd.org; Mon, 21 Aug 2006 12:18:05 GMT (envelope-from piso@freebsd.org) Date: Mon, 21 Aug 2006 12:18:05 GMT Message-Id: <200608211218.k7LCI57T080662@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104682 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 12:18:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=104682 Change 104682 by piso@piso_newluxor on 2006/08/21 12:17:22 Make the stray logic MI: the only MD parts remaining is the function that scans&return all the interrupt events (in i386 is walk_intr_src()), and 2 low level interrupt functions (ie_enable() and ie_pending()). Moreover, struct intr_event got a new field: int (*ie_pending)(void *); much like ie_enable(), but this time it points to the low level code that checks if an interrupt source is still pending, and intr_event_create() was extended to accept *ie_pending() while declaring a new interrupt event. Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#6 edit .. //depot/projects/soc2006/intr_filter/arm/arm/intr.c#5 edit .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#12 edit .. //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#6 edit .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#15 edit .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#7 edit .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#7 edit .. //depot/projects/soc2006/intr_filter/sys/interrupt.h#6 edit Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#6 (text+ko) ==== @@ -88,7 +88,9 @@ if (interrupt_sources[vector] != NULL) return (EEXIST); error = intr_event_create(&isrc->is_event, isrc, 0, - (mask_fn)isrc->is_pic->pic_enable_source, "irq%d:", vector); + (mask_fn)isrc->is_pic->pic_enable_source, + (int (*)(void *))isrc->is_pic->pic_source_pending, + "irq%d:", vector); if (error) return (error); mtx_lock_spin(&intr_table_lock); ==== //depot/projects/soc2006/intr_filter/arm/arm/intr.c#5 (text+ko) ==== @@ -69,7 +69,7 @@ event = intr_events[irq]; if (event == NULL) { error = intr_event_create(&event, (void *)irq, 0, - (void (*)(void *))arm_unmask_irq, "intr%d:", irq); + (void (*)(void *))arm_unmask_irq, NULL, "intr%d:", irq); if (error) return; intr_events[irq] = event; ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#12 (text+ko) ==== @@ -64,8 +64,7 @@ static struct intsrc *interrupt_sources[NUM_IO_INTS]; static struct mtx intr_table_lock; -static struct callout callout_handle; -static int backoff = 1; +extern struct callout stray_callout_handle; #ifdef SMP static int assign_cpu; @@ -99,7 +98,9 @@ if (interrupt_sources[vector] != NULL) return (EEXIST); error = intr_event_create(&isrc->is_event, isrc, 0, - (mask_fn)isrc->is_pic->pic_enable_source, "irq%d:", vector); + (mask_fn)isrc->is_pic->pic_enable_source, + (int (*)(void *))isrc->is_pic->pic_source_pending, + "irq%d:", vector); if (error) return (error); mtx_lock_spin(&intr_table_lock); @@ -176,69 +177,22 @@ return (isrc->is_pic->pic_config_intr(isrc, trig, pol)); } -static struct intsrc * +/* Stray detection MD code */ +static struct intr_event * walk_intr_src(void) { + struct intsrc *isrc; static int i = 0; for (; iis_event); } i = 0; return (NULL); } -static void -stray_detection(void *_arg) -{ - struct intsrc *isrc; - struct intr_event *ie; - void *(*walk_src)(void) = _arg; - int thread; - -/* - * XXX adding a parameter to struct intr_event, will make this MI, but - * to do that it's necessary to break intr_event_create and add an arg like: - * - * int (*is_pending)(void *); - * - * in that case, walk_src will return a "struct intr_event *", and... - */ - - /* analyze all the interrupt sources... */ - while ((isrc = walk_src()) != NULL) { - ie = isrc->is_event; - /* is this interrupt marked as being throttled? */ - if (ie != NULL && ie->ie_count == INT_MAX) { - /* and is the interrupt still pending? */ - /* XXX ... here we'll call "ie->is_pending(ie->ie_source)" */ - if (isrc->is_pic->pic_source_pending(isrc)) { - /* - * yes, it's still pending: call filters... - */ - thread = intr_filter_loop(ie, NULL /* XXX frame */ ); - if (thread & FILTER_STRAY) { - /* - * no filter claimed the intr, - * backoff with a longer timeout - */ - backoff++; // XXX we need thresholds... - callout_reset(&callout_handle, hz*backoff, - &stray_detection, _arg); - continue; - } - } - /* - * a filter claimed the intr, or the intr was not - * pending anymore: unmask it - */ - ie->ie_count = 0; - ie->ie_enable(ie->ie_source); - } - } -} - void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame) { @@ -304,7 +258,7 @@ printf("Interrupt stray detected on \"%s\"; throttling interrupt source\n", ie->ie_name); ie->ie_count = INT_MAX; mtx_lock_spin(&intr_table_lock); - callout_reset(&callout_handle, hz, &stray_detection, &walk_intr_src); + callout_reset(&stray_callout_handle, hz, &stray_detection, &walk_intr_src); mtx_unlock_spin(&intr_table_lock); } @@ -392,7 +346,7 @@ intrcnt_setname("???", 0); intrcnt_index = 1; mtx_init(&intr_table_lock, "intr table", NULL, MTX_SPIN); - callout_init_mtx(&callout_handle, &intr_table_lock, 0); + callout_init_mtx(&stray_callout_handle, &intr_table_lock, 0); // XXX - we don't drain the callout... } SYSINIT(intr_init, SI_SUB_INTR, SI_ORDER_FIRST, intr_init, NULL) ==== //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#6 (text+ko) ==== @@ -320,7 +320,7 @@ bcopy(name, intrname, strlen(name)); } errcode = intr_event_create(&i->event, (void *)vector, 0, - (void (*)(void *))ia64_send_eoi, "intr:"); + (void (*)(void *))ia64_send_eoi, NULL, "intr:"); if (errcode) { free(i, M_DEVBUF); return errcode; ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#15 (text+ko) ==== @@ -58,6 +58,10 @@ #include #endif +/* Stray detection */ +struct callout stray_callout_handle; +static int backoff = 1; + /* * Describe an interrupt thread. There is one of these per interrupt event. */ @@ -228,7 +232,7 @@ int intr_event_create(struct intr_event **event, void *source, int flags, - void (*enable)(void *), const char *fmt, ...) + void (*enable)(void *), int (*pending)(void *), const char *fmt, ...) { struct intr_event *ie; va_list ap; @@ -239,6 +243,7 @@ ie = malloc(sizeof(struct intr_event), M_ITHREAD, M_WAITOK | M_ZERO); ie->ie_source = source; ie->ie_enable = enable; + ie->ie_pending = pending; ie->ie_flags = flags; TAILQ_INIT(&ie->ie_handlers); mtx_init(&ie->ie_lock, "intr event", NULL, MTX_DEF); @@ -561,7 +566,7 @@ return (EINVAL); } else { error = intr_event_create(&ie, NULL, IE_SOFT, NULL, - "swi%d:", pri); + NULL, "swi%d:", pri); if (error) return (error); if (eventp != NULL) @@ -826,7 +831,44 @@ return (FILTER_STRAY); } +/* Stray storm detection */ +void +stray_detection(void *_arg) +{ + struct intr_event *ie; + void *(*walk_src)(void) = _arg; + int thread; + /* analyze all the interrupt sources... */ + while ((ie = walk_src()) != NULL) { + /* is this interrupt marked as being throttled? */ + if (ie != NULL && ie->ie_count == INT_MAX) { + /* and is the interrupt still pending? */ + if (ie->ie_pending(ie->ie_source)) { + /* + * yes, it's still pending: call filters... + */ + thread = intr_filter_loop(ie, NULL /* XXX frame */ ); + if (thread & FILTER_STRAY) { + /* + * no filter claimed the intr, + * backoff with a longer timeout + */ + backoff++; // XXX we need thresholds... + callout_reset(&stray_callout_handle, hz*backoff, + &stray_detection, _arg); + continue; + } + } + /* + * a filter claimed the intr, or the intr was not + * pending anymore: unmask it + */ + ie->ie_count = 0; + ie->ie_enable(ie->ie_source); + } + } +} #ifdef DDB /* ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#7 (text+ko) ==== @@ -185,7 +185,7 @@ mtx_unlock_spin(&intr_table_lock); if (event == NULL) { error = intr_event_create(&event, (void *)irq, 0, - (void (*)(void *))irq_enable, "irq%d:", irq); + (void (*)(void *))irq_enable, NULL, "irq%d:", irq); if (error) return (error); ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#7 (text+ko) ==== @@ -275,7 +275,7 @@ mtx_unlock_spin(&intr_table_lock); if (ie == NULL) { errcode = intr_event_create(&ie, (void *)(intptr_t)vec, 0, NULL, - "vec%d:", vec); + NULL, "vec%d:", vec); if (errcode) return (errcode); mtx_lock_spin(&intr_table_lock); ==== //depot/projects/soc2006/intr_filter/sys/interrupt.h#6 (text+ko) ==== @@ -74,6 +74,7 @@ void *ie_source; /* Cookie used by MD code. */ struct intr_thread *ie_thread; /* Thread we are connected to. */ void (*ie_enable)(void *); + int (*ie_pending)(void *); int ie_flags; int ie_count; /* Loop counter. */ int ie_warned; /* Warned about interrupt storm. */ @@ -115,13 +116,15 @@ void db_dump_intr_event(struct intr_event *ie, int handlers); #endif int intr_filter_loop(struct intr_event *ie, struct trapframe *frame); +void stray_detection(void *_arg); u_char intr_priority(enum intr_type flags); int intr_event_add_handler(struct intr_event *ie, const char *name, driver_filter_t filter, driver_intr_t handler, void *arg, u_char pri, enum intr_type flags, void **cookiep); int intr_event_create(struct intr_event **event, void *source, - int flags, void (*enable)(void *), const char *fmt, ...) - __printflike(5, 6); + int flags, void (*enable)(void *), int (*pending)(void *), + const char *fmt, ...) + __printflike(6, 7); int intr_event_destroy(struct intr_event *ie); int intr_event_remove_handler(void *cookie); int intr_event_schedule_thread(struct intr_event *ie); From owner-p4-projects@FreeBSD.ORG Mon Aug 21 14:08:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CD0D316A4E9; Mon, 21 Aug 2006 14:08:28 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A838B16A4E6 for ; Mon, 21 Aug 2006 14:08:28 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 545D643D53 for ; Mon, 21 Aug 2006 14:08:28 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LE8SQX096471 for ; Mon, 21 Aug 2006 14:08:28 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LE8RX2096468 for perforce@freebsd.org; Mon, 21 Aug 2006 14:08:27 GMT (envelope-from piso@freebsd.org) Date: Mon, 21 Aug 2006 14:08:27 GMT Message-Id: <200608211408.k7LE8RX2096468@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104687 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 14:08:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=104687 Change 104687 by piso@piso_newluxor on 2006/08/21 14:07:35 Fill the missing MD bits for stray detection: the low level ie_enable() and ie_pending() are still missing for archs !i386 and !amd64, but someone with knowlegde of the different interrupt controllers could write them very quickly. Looks like arm doesn't have any mutex to protect the global interrupt event table... Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#7 edit .. //depot/projects/soc2006/intr_filter/arm/arm/intr.c#6 edit .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#13 edit .. //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#7 edit .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#8 edit .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#8 edit Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#7 (text+ko) ==== @@ -63,6 +63,8 @@ static struct intsrc *interrupt_sources[NUM_IO_INTS]; static struct mtx intr_table_lock; +extern struct callout stray_callout_handle; + #ifdef SMP static int assign_cpu; @@ -168,6 +170,22 @@ return (isrc->is_pic->pic_config_intr(isrc, trig, pol)); } +/* Stray detection MD code */ +static struct intr_event * +walk_intr_src(void) { + struct intsrc *isrc; + static int i = 0; + + for (; iis_event != NULL) + return (isrc->is_event); + } + i = 0; + return (NULL); +} + void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame) { @@ -235,6 +253,15 @@ isrc->is_pic->pic_disable_source(isrc, PIC_EOI); critical_exit(); + /* Interrupt storm logic */ + if (thread & FILTER_STRAY) { + printf("Interrupt stray detected on \"%s\"; throttling interrupt source\n", ie->ie_name); + ie->ie_count = INT_MAX; + mtx_lock_spin(&intr_table_lock); + callout_reset(&stray_callout_handle, hz, &stray_detection, &walk_intr_src); + mtx_unlock_spin(&intr_table_lock); + } + /* Schedule the ithread if needed. */ if (thread & FILTER_SCHEDULE_THREAD) { error = intr_event_schedule_thread(ie); @@ -319,6 +346,7 @@ intrcnt_setname("???", 0); intrcnt_index = 1; mtx_init(&intr_table_lock, "intr table", NULL, MTX_SPIN); + callout_init_mtx(&stray_callout_handle, &intr_table_lock, 0); } SYSINIT(intr_init, SI_SUB_INTR, SI_ORDER_FIRST, intr_init, NULL) ==== //depot/projects/soc2006/intr_filter/arm/arm/intr.c#6 (text+ko) ==== @@ -55,6 +55,8 @@ static int intrcnt_index = 0; static int last_printed = 0; +extern struct callout stray_callout_handle; + void arm_handler_execute(struct trapframe *, int); void @@ -98,6 +100,22 @@ { } +/* Stray detection MD code */ +static struct intr_event * +walk_intr_events(void) { + struct intr_event *ie; + static int i = 0; + + for (; iie_enable == NULL || event->ie_pending == NULL) + printf("Interrupt stray detection not ready yet: check ie_enable and ie_pending\n"); + else { + printf("Interrupt stray detected on \"%s\"; throttling interrupt source\n", event->ie_name); + event->ie_count = INT_MAX; + // XXX missing callout_init_mtx(&stray_callout_handle, ...); + callout_reset(&stray_callout_handle, hz, + &stray_detection, &walk_intr_events); + } + } + // XXX eoi & mask intr not verified. /* Schedule thread if needed. */ if (thread & FILTER_SCHEDULE_THREAD) ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#13 (text+ko) ==== @@ -186,7 +186,7 @@ for (; iis_event != NULL) return (isrc->is_event); } i = 0; ==== //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#7 (text+ko) ==== @@ -255,8 +255,11 @@ volatile long *cntp; /* interrupt counter */ }; +#define IA64_NUMI 256 static struct mtx ia64_intrs_lock; -static struct ia64_intr *ia64_intrs[256]; +static struct ia64_intr *ia64_intrs[IA64_NUMI]; + +extern struct callout stray_callout_handle; extern struct sapic *ia64_sapics[]; extern int ia64_sapic_count; @@ -266,6 +269,7 @@ { mtx_init(&ia64_intrs_lock, "intr table", NULL, MTX_SPIN); + callout_init_mtx(&stray_callout_handle, &ia64_intrs_lock, 0); } SYSINIT(ithds_init, SI_SUB_INTR, SI_ORDER_SECOND, ithds_init, NULL); @@ -347,6 +351,22 @@ return (intr_event_remove_handler(cookie)); } +/* Stray detection MD code */ +static struct intr_event * +walk_intr_ia64(void) { + struct ia64_intr *ia64_i; + static int i = 0; + + for (; ievent != NULL) + return (ia64_i->event); + } + i = 0; + return (NULL); +} + void ia64_dispatch_intr(void *frame __unused, unsigned long vector) { @@ -383,6 +403,20 @@ thread = intr_filter_loop(ie, NULL); critical_exit(); + /* Interrupt storm logic */ + if (thread & FILTER_STRAY) { + if (ie->ie_enable == NULL || ie->ie_pending == NULL) + printf("Interrupt stray detection not ready yet: check ie_enable and ie_pending\n"); + else { + printf("Interrupt stray detected on \"%s\"; throttling interrupt source\n", ie->ie_name); + ie->ie_count = INT_MAX; + mtx_lock_spin(&ia64_intrs_lock); + callout_reset(&stray_callout_handle, hz, + &stray_detection, &walk_intr_ia64); + mtx_unlock_spin(&ia64_intrs_lock); + } + } + // XXX eoi & mask intr not verified. if (thread & FILTER_SCHEDULE_THREAD) { error = intr_event_schedule_thread(ie); ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#8 (text+ko) ==== @@ -88,6 +88,8 @@ static struct mtx intr_table_lock; +extern struct callout stray_callout_handle; + extern int extint, extsize; extern u_long extint_call; @@ -165,6 +167,7 @@ irq_disable = irq_d; mtx_init(&intr_table_lock, "intr table", NULL, MTX_SPIN); + callout_init_mtx(&stray_callout_handle, &intr_table_lock, 0); } int @@ -223,6 +226,22 @@ return(intr_event_remove_handler(cookie)); } +/* Stray detection MD code */ +static struct intr_event * +walk_intr_ppc(void) { + struct ppc_intr_handler *ppc; + static int i = 0; + + for (; iih_event != NULL) + return (ppc->ih_event); + } + i = 0; + return (NULL); +} + void intr_handle(u_int irq) { @@ -243,6 +262,20 @@ thread = intr_filter_loop(ie, NULL); critical_exit(); + /* Interrupt storm logic */ + if (thread & FILTER_STRAY) { + if (ie->ie_enable == NULL || ie->ie_pending == NULL) + printf("Interrupt stray detection not ready yet: check ie_enable and ie_pending\n"); + else { + printf("Interrupt stray detected on \"%s\"; throttling interrupt source\n", ie->ie_name); + ie->ie_count = INT_MAX; + mtx_lock_spin(&intr_table_lock); + callout_reset(&stray_callout_handle, hz, + &stray_detection, &walk_intr_ppc); + mtx_unlock_spin(&intr_table_lock); + } + } + // XXX eoi & mask intr not verified. /* Schedule a heavyweight interrupt process. */ if (thread & FILTER_SCHEDULE_THREAD) ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#8 (text+ko) ==== @@ -103,6 +103,8 @@ /* protect the intr_vectors table */ static struct mtx intr_table_lock; +extern struct callout stray_callout_handle; + static void intr_execute_handlers(void *); static void intr_stray_level(struct trapframe *); static void intr_stray_vector(void *); @@ -228,8 +230,25 @@ { mtx_init(&intr_table_lock, "intr table", NULL, MTX_SPIN); + callout_init_mtx(&stray_callout_handle, &intr_table_lock, 0); } +/* Stray detection MD code */ +static struct intr_event * +walk_intr_sparc64(void) { + struct intr_vector *iv; + static int i = 0; + + for (; iiv_event != NULL) + return (iv->iv_event); + } + i = 0; + return (NULL); +} + static void intr_execute_handlers(void *cookie) { @@ -247,6 +266,20 @@ /* Execute fast interrupt handlers directly. */ thread = intr_filter_loop(ie, NULL); + /* Interrupt storm logic */ + if (thread & FILTER_STRAY) { + if (ie->ie_enable == NULL || ie->ie_pending == NULL) + printf("Interrupt stray detection not ready yet: check ie_enable and ie_pending\n"); + else { + printf("Interrupt stray detected on \"%s\"; throttling interrupt source\n", ie->ie_name); + ie->ie_count = INT_MAX; + mtx_lock_spin(&intr_table_lock); + callout_reset(&stray_callout_handle, hz, + &stray_detection, &walk_intr_sparc64); + mtx_unlock_spin(&intr_table_lock); + } + } + // XXX eoi & mask intr not verified. /* Schedule a heavyweight interrupt process. */ if (thread & FILTER_SCHEDULE_THREAD) From owner-p4-projects@FreeBSD.ORG Mon Aug 21 14:17:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9875B16A4F4; Mon, 21 Aug 2006 14:17:02 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 562E816A4E2 for ; Mon, 21 Aug 2006 14:17:02 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DECE643DE7 for ; Mon, 21 Aug 2006 14:16:48 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LEGdrG097445 for ; Mon, 21 Aug 2006 14:16:39 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LEGd44097442 for perforce@freebsd.org; Mon, 21 Aug 2006 14:16:39 GMT (envelope-from rdivacky@FreeBSD.org) Date: Mon, 21 Aug 2006 14:16:39 GMT Message-Id: <200608211416.k7LEGd44097442@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 104689 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 14:17:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=104689 Change 104689 by rdivacky@rdivacky_witten on 2006/08/21 14:16:12 Regen after syscalls.master update. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#25 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#25 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#25 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#25 (text+ko) ==== @@ -2,7 +2,7 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_proto.h,v 1.80 2006/08/15 17:37:00 jhb Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.77 2006/08/15 12:28:14 netchild Exp */ @@ -784,7 +784,8 @@ char rmtp_l_[PADL_(struct l_timespec *)]; struct l_timespec * rmtp; char rmtp_r_[PADR_(struct l_timespec *)]; }; struct linux_statfs64_args { - register_t dummy; + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char buf_l_[PADL_(struct l_statfs64_buf *)]; struct l_statfs64_buf * buf; char buf_r_[PADR_(struct l_statfs64_buf *)]; }; struct linux_fstatfs64_args { register_t dummy; ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#25 (text+ko) ==== @@ -2,7 +2,7 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_syscall.h,v 1.74 2006/08/15 17:37:00 jhb Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.77 2006/08/15 12:28:14 netchild Exp */ ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#25 (text+ko) ==== @@ -2,7 +2,7 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_sysent.c,v 1.81 2006/08/15 17:37:00 jhb Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.77 2006/08/15 12:28:14 netchild Exp */ @@ -287,7 +287,7 @@ { AS(linux_clock_gettime_args), (sy_call_t *)linux_clock_gettime, AUE_NULL, NULL, 0, 0 }, /* 265 = linux_clock_gettime */ { AS(linux_clock_getres_args), (sy_call_t *)linux_clock_getres, AUE_NULL, NULL, 0, 0 }, /* 266 = linux_clock_getres */ { AS(linux_clock_nanosleep_args), (sy_call_t *)linux_clock_nanosleep, AUE_NULL, NULL, 0, 0 }, /* 267 = linux_clock_nanosleep */ - { 0, (sy_call_t *)linux_statfs64, AUE_NULL, NULL, 0, 0 }, /* 268 = linux_statfs64 */ + { AS(linux_statfs64_args), (sy_call_t *)linux_statfs64, AUE_NULL, NULL, 0, 0 }, /* 268 = linux_statfs64 */ { 0, (sy_call_t *)linux_fstatfs64, AUE_NULL, NULL, 0, 0 }, /* 269 = linux_fstatfs64 */ { AS(linux_tgkill_args), (sy_call_t *)linux_tgkill, AUE_NULL, NULL, 0, 0 }, /* 270 = linux_tgkill */ { 0, (sy_call_t *)linux_utimes, AUE_NULL, NULL, 0, 0 }, /* 271 = linux_utimes */ From owner-p4-projects@FreeBSD.ORG Mon Aug 21 14:17:04 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E5B8416A570; Mon, 21 Aug 2006 14:17:03 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A949916A4DE for ; Mon, 21 Aug 2006 14:17:02 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EA71943DEA for ; Mon, 21 Aug 2006 14:16:48 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LEGcC5097439 for ; Mon, 21 Aug 2006 14:16:38 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LEGc0E097436 for perforce@freebsd.org; Mon, 21 Aug 2006 14:16:38 GMT (envelope-from rdivacky@FreeBSD.org) Date: Mon, 21 Aug 2006 14:16:38 GMT Message-Id: <200608211416.k7LEGc0E097436@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 104688 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 14:17:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=104688 Change 104688 by rdivacky@rdivacky_witten on 2006/08/21 14:15:51 Add statfs64. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#25 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#25 (text+ko) ==== @@ -434,7 +434,7 @@ 266 AUE_NULL STD { int linux_clock_getres(clockid_t which, struct l_timespec *tp); } 267 AUE_NULL STD { int linux_clock_nanosleep(clockid_t which, int flags, \ struct l_timespec *rqtp, struct l_timespec *rmtp); } -268 AUE_NULL STD { int linux_statfs64(void); } +268 AUE_NULL STD { int linux_statfs64(char *path, struct l_statfs64_buf *buf); } 269 AUE_NULL STD { int linux_fstatfs64(void); } 270 AUE_NULL STD { int linux_tgkill(int tgid, int pid, int sig); } 271 AUE_NULL STD { int linux_utimes(void); } From owner-p4-projects@FreeBSD.ORG Mon Aug 21 14:18:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9675116A4E7; Mon, 21 Aug 2006 14:18:55 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 591E616A4DD for ; Mon, 21 Aug 2006 14:18:55 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 85C5043D5C for ; Mon, 21 Aug 2006 14:18:42 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LEIgK0097770 for ; Mon, 21 Aug 2006 14:18:42 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LEIgBE097767 for perforce@freebsd.org; Mon, 21 Aug 2006 14:18:42 GMT (envelope-from rdivacky@FreeBSD.org) Date: Mon, 21 Aug 2006 14:18:42 GMT Message-Id: <200608211418.k7LEIgBE097767@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 104690 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 14:18:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=104690 Change 104690 by rdivacky@rdivacky_witten on 2006/08/21 14:18:34 Add statfs64 syscall (untested). Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_stats.c#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_dummy.c#11 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_stats.c#2 (text+ko) ==== @@ -312,6 +312,19 @@ l_int f_spare[6]; }; +struct l_statfs64 { + l_int f_type; + l_int f_bsize; + uint64_t f_blocks; + uint64_t f_bfree; + uint64_t f_bavail; + uint64_t f_files; + uint64_t f_ffree; + l_fsid_t f_fsid; + l_int f_namelen; + l_int f_spare[6]; +}; + #define LINUX_CODA_SUPER_MAGIC 0x73757245L #define LINUX_EXT2_SUPER_MAGIC 0xEF53L #define LINUX_HPFS_SUPER_MAGIC 0xf995e849L @@ -387,6 +400,44 @@ return copyout(&linux_statfs, args->buf, sizeof(linux_statfs)); } +static void +bsd_to_linux_statfs64(struct statfs *bsd_statfs, struct l_statfs64 *linux_statfs) +{ + + linux_statfs->f_type = bsd_to_linux_ftype(bsd_statfs->f_fstypename); + linux_statfs->f_bsize = bsd_statfs->f_bsize; + linux_statfs->f_blocks = bsd_statfs->f_blocks; + linux_statfs->f_bfree = bsd_statfs->f_bfree; + linux_statfs->f_bavail = bsd_statfs->f_bavail; + linux_statfs->f_ffree = bsd_statfs->f_ffree; + linux_statfs->f_files = bsd_statfs->f_files; + linux_statfs->f_fsid.val[0] = bsd_statfs->f_fsid.val[0]; + linux_statfs->f_fsid.val[1] = bsd_statfs->f_fsid.val[1]; + linux_statfs->f_namelen = MAXNAMLEN; +} + +int +linux_statfs64(struct thread *td, struct linux_statfs64_args *args) +{ + struct l_statfs64 linux_statfs; + struct statfs bsd_statfs; + char *path; + int error; + + LCONVPATHEXIST(td, args->path, &path); + +#ifdef DEBUG + if (ldebug(statfs)) + printf(ARGS(statfs, "%s, *"), path); +#endif + error = kern_statfs(td, path, UIO_SYSSPACE, &bsd_statfs); + LFREEPATH(path); + if (error) + return (error); + bsd_to_linux_statfs64(&bsd_statfs, &linux_statfs); + return copyout(&linux_statfs, args->buf, sizeof(linux_statfs)); +} + int linux_fstatfs(struct thread *td, struct linux_fstatfs_args *args) { ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_dummy.c#11 (text+ko) ==== @@ -73,7 +73,6 @@ DUMMY(epoll_ctl); DUMMY(epoll_wait); DUMMY(remap_file_pages); -DUMMY(statfs64); DUMMY(fstatfs64); DUMMY(utimes); DUMMY(fadvise64_64); From owner-p4-projects@FreeBSD.ORG Mon Aug 21 17:42:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0EFFE16A4F5; Mon, 21 Aug 2006 17:42:23 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C194A16A4E8 for ; Mon, 21 Aug 2006 17:42:22 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E58DF43D8B for ; Mon, 21 Aug 2006 17:42:04 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LHg4UR022228 for ; Mon, 21 Aug 2006 17:42:04 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LHg4DX022225 for perforce@freebsd.org; Mon, 21 Aug 2006 17:42:04 GMT (envelope-from imp@freebsd.org) Date: Mon, 21 Aug 2006 17:42:04 GMT Message-Id: <200608211742.k7LHg4DX022225@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104701 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 17:42:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=104701 Change 104701 by imp@imp_paco-paco on 2006/08/21 17:41:54 IFC @104700 Affected files ... .. //depot/projects/arm/src/bin/ps/ps.1#3 integrate .. //depot/projects/arm/src/lib/libc/arm/net/htonl.S#2 integrate .. //depot/projects/arm/src/lib/libc/arm/net/htons.S#2 integrate .. //depot/projects/arm/src/lib/libc/arm/net/ntohl.S#2 integrate .. //depot/projects/arm/src/lib/libc/arm/net/ntohs.S#2 integrate .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#6 integrate .. //depot/projects/arm/src/sbin/camcontrol/camcontrol.8#2 integrate .. //depot/projects/arm/src/sbin/camcontrol/camcontrol.c#2 integrate .. //depot/projects/arm/src/sbin/dhclient/dhclient.8#3 integrate .. //depot/projects/arm/src/sbin/dhclient/dhclient.c#3 integrate .. //depot/projects/arm/src/share/man/man9/lock.9#2 integrate .. //depot/projects/arm/src/sys/cam/scsi/scsi_all.c#4 integrate .. //depot/projects/arm/src/sys/cam/scsi/scsi_all.h#3 integrate .. //depot/projects/arm/src/sys/dev/iicbus/if_ic.c#4 integrate .. //depot/projects/arm/src/sys/dev/iicbus/iicbb.c#4 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_ioctl.h#7 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_pci.c#13 integrate .. //depot/projects/arm/src/sys/sys/sysctl.h#11 integrate .. //depot/projects/arm/src/sys/ufs/ffs/ffs_snapshot.c#13 integrate .. //depot/projects/arm/src/sys/vm/vm_object.c#14 integrate .. //depot/projects/arm/src/sys/vm/vm_page.c#18 integrate .. //depot/projects/arm/src/sys/vm/vm_pageq.c#9 integrate .. //depot/projects/arm/src/sys/vm/vm_zeroidle.c#5 integrate .. //depot/projects/arm/src/usr.sbin/sysinstall/devices.c#2 integrate .. //depot/projects/arm/src/usr.sbin/sysinstall/install.c#2 integrate Differences ... ==== //depot/projects/arm/src/bin/ps/ps.1#3 (text+ko) ==== @@ -27,9 +27,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 -.\" $FreeBSD: src/bin/ps/ps.1,v 1.87 2006/08/18 14:12:38 yar Exp $ +.\" $FreeBSD: src/bin/ps/ps.1,v 1.88 2006/08/21 03:09:12 yar Exp $ .\" -.Dd August 18, 2006 +.Dd August 21, 2006 .Dt PS 1 .Os .Sh NAME @@ -181,7 +181,8 @@ list of keywords specified. The last keyword in the list may be appended with an equals .Pq Ql = -sign and a string spanning the rest of the argument. +sign and a string that spans the rest of the argument and can contain +space and comma characters. This causes the printed header to use the specified string instead of the standard header. Multiple keywords may also be given in the form of more than one ==== //depot/projects/arm/src/lib/libc/arm/net/htonl.S#2 (text+ko) ==== @@ -37,12 +37,14 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/arm/net/htonl.S,v 1.1 2004/05/14 12:04:30 cognet Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/arm/net/htonl.S,v 1.2 2006/08/21 14:42:47 cognet Exp $"); _ENTRY(_C_LABEL(htonl)) _PROF_PROLOGUE +#ifndef __ARMEB__ eor r1, r0, r0, ror #16 bic r1, r1, #0x00FF0000 mov r0, r0, ror #8 eor r0, r0, r1, lsr #8 +#endif mov pc, lr ==== //depot/projects/arm/src/lib/libc/arm/net/htons.S#2 (text+ko) ==== @@ -37,11 +37,13 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/arm/net/htons.S,v 1.1 2004/05/14 12:04:30 cognet Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/arm/net/htons.S,v 1.2 2006/08/21 14:42:47 cognet Exp $"); _ENTRY(_C_LABEL(htons)) _PROF_PROLOGUE +#ifndef __ARMEB__ and r1, r0, #0xff mov r0, r0, lsr #8 orr r0, r0, r1, lsl #8 +#endif mov pc, lr ==== //depot/projects/arm/src/lib/libc/arm/net/ntohl.S#2 (text+ko) ==== @@ -37,12 +37,14 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/arm/net/ntohl.S,v 1.1 2004/05/14 12:04:30 cognet Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/arm/net/ntohl.S,v 1.2 2006/08/21 14:42:47 cognet Exp $"); _ENTRY(_C_LABEL(ntohl)) _PROF_PROLOGUE +#ifndef __ARMEB__ eor r1, r0, r0, ror #16 bic r1, r1, #0x00FF0000 mov r0, r0, ror #8 eor r0, r0, r1, lsr #8 +#endif mov pc, lr ==== //depot/projects/arm/src/lib/libc/arm/net/ntohs.S#2 (text+ko) ==== @@ -37,11 +37,13 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/arm/net/ntohs.S,v 1.1 2004/05/14 12:04:30 cognet Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/arm/net/ntohs.S,v 1.2 2006/08/21 14:42:47 cognet Exp $"); _ENTRY(_C_LABEL(ntohs)) _PROF_PROLOGUE +#ifndef __ARMEB__ and r1, r0, #0xff mov r0, r0, lsr #8 orr r0, r0, r1, lsl #8 +#endif mov pc, lr ==== //depot/projects/arm/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#6 (text+ko) ==== @@ -3,7 +3,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.961 2006/08/17 05:16:15 gshapiro Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.962 2006/08/21 00:59:40 bmah Exp $ 2000 @@ -1557,7 +1557,10 @@ &merged; IPFilter has been updated from - 4.1.8 to 4.1.10. + 4.1.8 to 4.1.13. + + less has been updated from v381 + to v394. OpenSSH has been updated from 4.2p1 to 4.3p1. ==== //depot/projects/arm/src/sbin/camcontrol/camcontrol.8#2 (text+ko) ==== @@ -1,5 +1,5 @@ .\" -.\" Copyright (c) 1998, 1999, 2000, 2002, 2005 Kenneth D. Merry. +.\" Copyright (c) 1998, 1999, 2000, 2002, 2005, 2006 Kenneth D. Merry. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/sbin/camcontrol/camcontrol.8,v 1.41 2005/06/14 11:24:55 ru Exp $ +.\" $FreeBSD: src/sbin/camcontrol/camcontrol.8,v 1.42 2006/08/21 13:24:49 ken Exp $ .\" .Dd September 14, 1998 .Dt CAMCONTROL 8 @@ -59,6 +59,13 @@ .Op Fl S .Op Fl R .Nm +.Ic reportluns +.Op device id +.Op generic args +.Op Fl c +.Op Fl l +.Op Fl r Ar reporttype +.Nm .Ic start .Op device id .Op generic args @@ -266,6 +273,37 @@ .It Fl R Print out transfer rate information. .El +.It Ic reportluns +Send the SCSI REPORT LUNS (0xA0) command to the given device. +By default, +.Nm +will print out the list of logical units (LUNs) supported by the target device. +There are a couple of options to modify the output: +.Bl -tag -width 01234567890123 +.It Fl c +Just print out a count of LUNs, not the actual LUN numbers. +.It Fl l +Just print out the LUNs, and don't print out the count. +.It Fl r Ar reporttype +Specify the type of report to request from the target: +.Bl -tag -width 012345678 +.It default +Return the default report. +This is the +.Nm +default. +Most targets will support this report if they support the REPORT LUNS +command. +.It wellknown +Return only well known LUNs. +.It all +Return all available LUNs. +.El +.El +.Pp +.Nm +will try to print out LUN numbers in a reasonable format. +It can understand the peripheral, flat, LUN and extended LUN formats. .It Ic start Send the SCSI Start/Stop Unit (0x1B) command to the given device with the start bit set. ==== //depot/projects/arm/src/sbin/camcontrol/camcontrol.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002, 2005 Kenneth D. Merry + * Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002, 2005, 2006 Kenneth D. Merry * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/camcontrol/camcontrol.c,v 1.53 2005/03/26 05:34:54 ken Exp $"); +__FBSDID("$FreeBSD: src/sbin/camcontrol/camcontrol.c,v 1.54 2006/08/21 13:24:49 ken Exp $"); #include #include @@ -69,6 +69,7 @@ CAM_CMD_TAG = 0x0000000e, CAM_CMD_RATE = 0x0000000f, CAM_CMD_DETACH = 0x00000010, + CAM_CMD_REPORTLUNS = 0x00000011 } cam_cmdmask; typedef enum { @@ -127,6 +128,7 @@ {"stop", CAM_CMD_STARTSTOP, CAM_ARG_NONE, NULL}, {"load", CAM_CMD_STARTSTOP, CAM_ARG_START_UNIT | CAM_ARG_EJECT, NULL}, {"eject", CAM_CMD_STARTSTOP, CAM_ARG_EJECT, NULL}, + {"reportluns", CAM_CMD_REPORTLUNS, CAM_ARG_NONE, "clr:"}, #endif /* MINIMALISTIC */ {"rescan", CAM_CMD_RESCAN, CAM_ARG_NONE, NULL}, {"reset", CAM_CMD_RESET, CAM_ARG_NONE, NULL}, @@ -203,6 +205,8 @@ int timeout, int argc, char **argv, char *combinedopt); static int scsiformat(struct cam_device *device, int argc, char **argv, char *combinedopt, int retry_count, int timeout); +static int scsireportluns(struct cam_device *device, int argc, char **argv, + char *combinedopt, int retry_count, int timeout); #endif /* MINIMALISTIC */ camcontrol_optret @@ -3152,6 +3156,251 @@ return(error); } + +static int +scsireportluns(struct cam_device *device, int argc, char **argv, + char *combinedopt, int retry_count, int timeout) +{ + union ccb *ccb; + int c, countonly, lunsonly; + struct scsi_report_luns_data *lundata; + int alloc_len; + uint8_t report_type; + uint32_t list_len, i, j; + int retval; + + retval = 0; + lundata = NULL; + report_type = RPL_REPORT_DEFAULT; + ccb = cam_getccb(device); + + if (ccb == NULL) { + warnx("%s: error allocating ccb", __func__); + return (1); + } + + bzero(&(&ccb->ccb_h)[1], + sizeof(struct ccb_scsiio) - sizeof(struct ccb_hdr)); + + countonly = 0; + lunsonly = 0; + + while ((c = getopt(argc, argv, combinedopt)) != -1) { + switch (c) { + case 'c': + countonly++; + break; + case 'l': + lunsonly++; + break; + case 'r': + if (strcasecmp(optarg, "default") == 0) + report_type = RPL_REPORT_DEFAULT; + else if (strcasecmp(optarg, "wellknown") == 0) + report_type = RPL_REPORT_WELLKNOWN; + else if (strcasecmp(optarg, "all") == 0) + report_type = RPL_REPORT_ALL; + else { + warnx("%s: invalid report type \"%s\"", + __func__, optarg); + retval = 1; + goto bailout; + } + break; + default: + break; + } + } + + if ((countonly != 0) + && (lunsonly != 0)) { + warnx("%s: you can only specify one of -c or -l", __func__); + retval = 1; + goto bailout; + } + /* + * According to SPC-4, the allocation length must be at least 16 + * bytes -- enough for the header and one LUN. + */ + alloc_len = sizeof(*lundata) + 8; + +retry: + + lundata = malloc(alloc_len); + + if (lundata == NULL) { + warn("%s: error mallocing %d bytes", __func__, alloc_len); + retval = 1; + goto bailout; + } + + scsi_report_luns(&ccb->csio, + /*retries*/ retry_count, + /*cbfcnp*/ NULL, + /*tag_action*/ MSG_SIMPLE_Q_TAG, + /*select_report*/ report_type, + /*rpl_buf*/ lundata, + /*alloc_len*/ alloc_len, + /*sense_len*/ SSD_FULL_SIZE, + /*timeout*/ timeout ? timeout : 5000); + + /* Disable freezing the device queue */ + ccb->ccb_h.flags |= CAM_DEV_QFRZDIS; + + if (arglist & CAM_ARG_ERR_RECOVER) + ccb->ccb_h.flags |= CAM_PASS_ERR_RECOVER; + + if (cam_send_ccb(device, ccb) < 0) { + warn("error sending REPORT LUNS command"); + + if (arglist & CAM_ARG_VERBOSE) + cam_error_print(device, ccb, CAM_ESF_ALL, + CAM_EPF_ALL, stderr); + + retval = 1; + goto bailout; + } + + if ((ccb->ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_CMP) { + cam_error_print(device, ccb, CAM_ESF_ALL, CAM_EPF_ALL, stderr); + retval = 1; + goto bailout; + } + + + list_len = scsi_4btoul(lundata->length); + + /* + * If we need to list the LUNs, and our allocation + * length was too short, reallocate and retry. + */ + if ((countonly == 0) + && (list_len > (alloc_len - sizeof(*lundata)))) { + alloc_len = list_len + sizeof(*lundata); + free(lundata); + goto retry; + } + + if (lunsonly == 0) + fprintf(stdout, "%u LUN%s found\n", list_len / 8, + ((list_len / 8) > 1) ? "s" : ""); + + if (countonly != 0) + goto bailout; + + for (i = 0; i < (list_len / 8); i++) { + int no_more; + + no_more = 0; + for (j = 0; j < sizeof(lundata->luns[i].lundata); j += 2) { + if (j != 0) + fprintf(stdout, ","); + switch (lundata->luns[i].lundata[j] & + RPL_LUNDATA_ATYP_MASK) { + case RPL_LUNDATA_ATYP_PERIPH: + if ((lundata->luns[i].lundata[j] & + RPL_LUNDATA_PERIPH_BUS_MASK) != 0) + fprintf(stdout, "%d:", + lundata->luns[i].lundata[j] & + RPL_LUNDATA_PERIPH_BUS_MASK); + else if ((j == 0) + && ((lundata->luns[i].lundata[j+2] & + RPL_LUNDATA_PERIPH_BUS_MASK) == 0)) + no_more = 1; + + fprintf(stdout, "%d", + lundata->luns[i].lundata[j+1]); + break; + case RPL_LUNDATA_ATYP_FLAT: { + uint8_t tmplun[2]; + tmplun[0] = lundata->luns[i].lundata[j] & + RPL_LUNDATA_FLAT_LUN_MASK; + tmplun[1] = lundata->luns[i].lundata[j+1]; + + fprintf(stdout, "%d", scsi_2btoul(tmplun)); + no_more = 1; + break; + } + case RPL_LUNDATA_ATYP_LUN: + fprintf(stdout, "%d:%d:%d", + (lundata->luns[i].lundata[j+1] & + RPL_LUNDATA_LUN_BUS_MASK) >> 5, + lundata->luns[i].lundata[j] & + RPL_LUNDATA_LUN_TARG_MASK, + lundata->luns[i].lundata[j+1] & + RPL_LUNDATA_LUN_LUN_MASK); + break; + case RPL_LUNDATA_ATYP_EXTLUN: { + int field_len, field_len_code, eam_code; + + eam_code = lundata->luns[i].lundata[j] & + RPL_LUNDATA_EXT_EAM_MASK; + field_len_code = (lundata->luns[i].lundata[j] & + RPL_LUNDATA_EXT_LEN_MASK) >> 4; + field_len = field_len_code * 2; + + if ((eam_code == RPL_LUNDATA_EXT_EAM_WK) + && (field_len_code == 0x00)) { + fprintf(stdout, "%d", + lundata->luns[i].lundata[j+1]); + } else if ((eam_code == + RPL_LUNDATA_EXT_EAM_NOT_SPEC) + && (field_len_code == 0x03)) { + uint8_t tmp_lun[8]; + + /* + * This format takes up all 8 bytes. + * If we aren't starting at offset 0, + * that's a bug. + */ + if (j != 0) { + fprintf(stdout, "Invalid " + "offset %d for " + "Extended LUN not " + "specified format", j); + no_more = 1; + break; + } + bzero(tmp_lun, sizeof(tmp_lun)); + bcopy(&lundata->luns[i].lundata[j+1], + &tmp_lun[1], sizeof(tmp_lun) - 1); + fprintf(stdout, "%#jx", + (intmax_t)scsi_8btou64(tmp_lun)); + no_more = 1; + } else { + fprintf(stderr, "Unknown Extended LUN" + "Address method %#x, length " + "code %#x", eam_code, + field_len_code); + no_more = 1; + } + break; + } + default: + fprintf(stderr, "Unknown LUN address method " + "%#x\n", lundata->luns[i].lundata[0] & + RPL_LUNDATA_ATYP_MASK); + break; + } + /* + * For the flat addressing method, there are no + * other levels after it. + */ + if (no_more != 0) + break; + } + fprintf(stdout, "\n"); + } + +bailout: + + cam_freeccb(ccb); + + free(lundata); + + return (retval); +} + #endif /* MINIMALISTIC */ void @@ -3164,6 +3413,7 @@ " camcontrol periphlist [dev_id][-n dev_name] [-u unit]\n" " camcontrol tur [dev_id][generic args]\n" " camcontrol inquiry [dev_id][generic args] [-D] [-S] [-R]\n" +" camcontrol reportluns [dev_id][generic args] [-c] [-l] [-r report]\n" " camcontrol start [dev_id][generic args]\n" " camcontrol stop [dev_id][generic args]\n" " camcontrol load [dev_id][generic args]\n" @@ -3196,6 +3446,7 @@ "periphlist list all CAM peripheral drivers attached to a device\n" "tur send a test unit ready to the named device\n" "inquiry send a SCSI inquiry command to the named device\n" +"reportluns send a SCSI report luns command to the device\n" "start send a Start Unit command to the device\n" "stop send a Stop Unit command to the device\n" "load send a Start Unit command to the device with the load bit set\n" @@ -3236,6 +3487,10 @@ "-D get the standard inquiry data\n" "-S get the serial number\n" "-R get the transfer rate, etc.\n" +"reportluns arguments:\n" +"-c only report a count of available LUNs\n" +"-l only print out luns, and not a count\n" +"-r specify \"default\", \"wellknown\" or \"all\"\n" "cmd arguments:\n" "-c cdb [args] specify the SCSI CDB\n" "-i len fmt specify input data and input data format\n" @@ -3547,6 +3802,11 @@ error = scsiformat(cam_dev, argc, argv, combinedopt, retry_count, timeout); break; + case CAM_CMD_REPORTLUNS: + error = scsireportluns(cam_dev, argc, argv, + combinedopt, retry_count, + timeout); + break; #endif /* MINIMALISTIC */ case CAM_CMD_USAGE: usage(1); ==== //depot/projects/arm/src/sbin/dhclient/dhclient.8#3 (text+ko) ==== @@ -36,9 +36,9 @@ .\" see ``http://www.isc.org/isc''. To learn more about Vixie .\" Enterprises, see ``http://www.vix.com''. .\" -.\" $FreeBSD: src/sbin/dhclient/dhclient.8,v 1.7 2006/08/17 20:11:21 brian Exp $ +.\" $FreeBSD: src/sbin/dhclient/dhclient.8,v 1.8 2006/08/21 16:31:31 brian Exp $ .\" -.Dd August 17, 2006 +.Dd July 22, 2005 .Dt DHCLIENT 8 .Os .Sh NAME @@ -46,7 +46,7 @@ .Nd "Dynamic Host Configuration Protocol (DHCP) client" .Sh SYNOPSIS .Nm -.Op Fl bdpqu +.Op Fl bdqu .Op Fl c Ar file .Op Fl l Ar file .Ar interface @@ -83,14 +83,6 @@ Specify an alternate location, .Ar file , for the leases file. -.It Fl p -Tells -.Nm -to persist in trying to configure the interface, despite -an inability to gain carrier. -This is used to survive switch outages and when -.Nm -is required as soon as the cable is connected. .It Fl q Forces .Nm ==== //depot/projects/arm/src/sbin/dhclient/dhclient.c#3 (text+ko) ==== @@ -54,7 +54,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/dhclient/dhclient.c,v 1.18 2006/08/17 17:27:42 brian Exp $"); +__FBSDID("$FreeBSD: src/sbin/dhclient/dhclient.c,v 1.19 2006/08/21 16:31:31 brian Exp $"); #include "dhcpd.h" #include "privsep.h" @@ -295,14 +295,13 @@ int ch, fd, quiet = 0, i = 0; int pipe_fd[2]; int immediate_daemon = 0; - int persist = 0; struct passwd *pw; /* Initially, log errors to stderr as well as to syslogd. */ openlog(__progname, LOG_PID | LOG_NDELAY, DHCPD_LOG_FACILITY); setlogmask(LOG_UPTO(LOG_INFO)); - while ((ch = getopt(argc, argv, "bc:dl:pqu")) != -1) + while ((ch = getopt(argc, argv, "bc:dl:qu")) != -1) switch (ch) { case 'b': immediate_daemon = 1; @@ -316,9 +315,6 @@ case 'l': path_dhclient_db = optarg; break; - case 'p': - persist = 1; - break; case 'q': quiet = 1; break; @@ -366,18 +362,12 @@ fprintf(stderr, "."); fflush(stderr); if (++i > 10) { - if (persist) { - fprintf(stderr, " giving up for now\n"); - break; - } else { - fprintf(stderr, " giving up\n"); - exit(1); - } + fprintf(stderr, " giving up\n"); + exit(1); } sleep(1); } - if (i <= 10) - fprintf(stderr, " got link\n"); + fprintf(stderr, " got link\n"); } if ((nullfd = open(_PATH_DEVNULL, O_RDWR, 0)) == -1) @@ -447,7 +437,7 @@ { extern char *__progname; - fprintf(stderr, "usage: %s [-bdpqu] ", __progname); + fprintf(stderr, "usage: %s [-bdqu] ", __progname); fprintf(stderr, "[-c conffile] [-l leasefile] interface\n"); exit(1); } ==== //depot/projects/arm/src/share/man/man9/lock.9#2 (text+ko) ==== @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH .\" DAMAGE. .\" -.\" $FreeBSD: src/share/man/man9/lock.9,v 1.13 2006/06/20 21:41:14 maxim Exp $ +.\" $FreeBSD: src/share/man/man9/lock.9,v 1.14 2006/08/21 12:45:19 kib Exp $ .\" .Dd June 20, 2006 .Dt LOCK 9 @@ -138,6 +138,8 @@ .It Dv LK_UPGRADE Upgrade a shared lock to an exclusive lock. If this call fails, the shared lock is lost. +During the upgrade, the shared lock could +be temporarily dropped. Attempts to upgrade an exclusive lock will cause a .Xr panic 9 . .It Dv LK_RELEASE ==== //depot/projects/arm/src/sys/cam/scsi/scsi_all.c#4 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__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 @@ -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/arm/src/sys/cam/scsi/scsi_all.h#3 (text+ko) ==== @@ -14,7 +14,7 @@ * * Ported to run under 386BSD by Julian Elischer (julian@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/arm/src/sys/dev/iicbus/if_ic.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__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/arm/src/sys/dev/iicbus/iicbb.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__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/arm/src/sys/dev/isp/isp_ioctl.h#7 (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 >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Aug 21 17:53:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C2EE16A4E9; Mon, 21 Aug 2006 17:53:23 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4A9A016A4E7 for ; Mon, 21 Aug 2006 17:53:23 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AFDD243D77 for ; Mon, 21 Aug 2006 17:53:19 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LHrJ88022948 for ; Mon, 21 Aug 2006 17:53:19 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LHrJEM022945 for perforce@freebsd.org; Mon, 21 Aug 2006 17:53:19 GMT (envelope-from piso@freebsd.org) Date: Mon, 21 Aug 2006 17:53:19 GMT Message-Id: <200608211753.k7LHrJEM022945@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104702 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 17:53:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=104702 Change 104702 by piso@piso_longino on 2006/08/21 17:53:08 Restore the original driver: i keep getting a "kernel trap 12 with interrupt disabled" while calling ath_hal_intrpend() in the filter. Talk with jhb and sam about refactoring this driver. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/ath/if_ath.c#6 edit .. //depot/projects/soc2006/intr_filter/dev/ath/if_ath_pci.c#4 edit .. //depot/projects/soc2006/intr_filter/dev/ath/if_athvar.h#5 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/ath/if_ath.c#6 (text+ko) ==== @@ -115,8 +115,8 @@ static void ath_watchdog(struct ifnet *); static int ath_ioctl(struct ifnet *, u_long, caddr_t); static void ath_fatal_proc(void *, int); -static void ath_rxorn_proc(void *); -static void ath_bmiss_proc(void *); +static void ath_rxorn_proc(void *, int); +static void ath_bmiss_proc(void *, int); static void ath_radar_proc(void *, int); static int ath_key_alloc(struct ieee80211com *, const struct ieee80211_key *, @@ -149,7 +149,7 @@ struct ieee80211_node *ni, int subtype, int rssi, u_int32_t rstamp); static void ath_setdefantenna(struct ath_softc *, u_int); -static void ath_rx_proc(void *); +static void ath_rx_proc(void *, int); static void ath_txq_init(struct ath_softc *sc, struct ath_txq *, int); static struct ath_txq *ath_txq_setup(struct ath_softc*, int qtype, int subtype); static int ath_tx_setup(struct ath_softc *, int, int); @@ -158,9 +158,9 @@ static void ath_tx_cleanup(struct ath_softc *); static int ath_tx_start(struct ath_softc *, struct ieee80211_node *, struct ath_buf *, struct mbuf *); -static void ath_tx_proc_q0(void *); -static void ath_tx_proc_q0123(void *); -static void ath_tx_proc(void *); +static void ath_tx_proc_q0(void *, int); +static void ath_tx_proc_q0123(void *, int); +static void ath_tx_proc(void *, int); static int ath_chan_set(struct ath_softc *, struct ieee80211_channel *); static void ath_draintxq(struct ath_softc *); static void ath_stoprecv(struct ath_softc *); @@ -398,7 +398,10 @@ taskqueue_thread_enqueue, &sc->sc_tq); taskqueue_start_threads(&sc->sc_tq, 1, PI_NET, "%s taskq", ifp->if_xname); - + + TASK_INIT(&sc->sc_rxtask, 0, ath_rx_proc, sc); + TASK_INIT(&sc->sc_rxorntask, 0, ath_rxorn_proc, sc); + TASK_INIT(&sc->sc_bmisstask, 0, ath_bmiss_proc, sc); TASK_INIT(&sc->sc_bstucktask,0, ath_bstuck_proc, sc); TASK_INIT(&sc->sc_radartask, 0, ath_radar_proc, sc); @@ -456,13 +459,13 @@ */ switch (sc->sc_txqsetup &~ (1<sc_cabq->axq_qnum)) { case 0x01: - sc->tx_func = &ath_tx_proc_q0; + TASK_INIT(&sc->sc_txtask, 0, ath_tx_proc_q0, sc); break; case 0x0f: - sc->tx_func = &ath_tx_proc_q0123; + TASK_INIT(&sc->sc_txtask, 0, ath_tx_proc_q0123, sc); break; default: - sc->tx_func = &ath_tx_proc; + TASK_INIT(&sc->sc_txtask, 0, ath_tx_proc, sc); break; } @@ -711,13 +714,16 @@ ath_stop(ifp); } -int -ath_filter(void *arg) +/* + * Interrupt handler. Most of the actual processing is deferred. + */ +void +ath_intr(void *arg) { struct ath_softc *sc = arg; struct ifnet *ifp = sc->sc_ifp; struct ath_hal *ah = sc->sc_ah; - int ret = FILTER_HANDLED; + HAL_INT status; if (sc->sc_invalid) { /* @@ -725,19 +731,17 @@ * Note this can happen early on if the IRQ is shared. */ DPRINTF(sc, ATH_DEBUG_ANY, "%s: invalid; ignored\n", __func__); - return (FILTER_STRAY); + return; } - mtx_lock_spin(&sc->sc_smtx); if (!ath_hal_intrpend(ah)) /* shared irq, not for us */ - return (FILTER_STRAY); + return; if (!((ifp->if_flags & IFF_UP) && (ifp->if_drv_flags & - IFF_DRV_RUNNING))) { + IFF_DRV_RUNNING))) { DPRINTF(sc, ATH_DEBUG_ANY, "%s: if_flags 0x%x\n", __func__, ifp->if_flags); - ath_hal_getisr(ah, &sc->sc_status); /* clear ISR */ + ath_hal_getisr(ah, &status); /* clear ISR */ ath_hal_intrset(ah, 0); /* disable further intr's */ - mtx_unlock_spin(&sc->sc_smtx); - return (ret); + return; } /* * Figure out the reason(s) for the interrupt. Note @@ -745,40 +749,9 @@ * bits we haven't explicitly enabled so we mask the * value to insure we only process bits we requested. */ - ath_hal_getisr(ah, &sc->sc_status); /* NB: clears ISR too */ - DPRINTF(sc, ATH_DEBUG_INTR, "%s: status 0x%x\n", __func__, sc->sc_status); - sc->sc_status &= sc->sc_imask; /* discard unasked for bits */ - if (sc->sc_status & HAL_INT_RXEOL) { - /* - * NB: the hardware should re-read the link when - * RXE bit is written, but it doesn't work at - * least on older hardware revs. - */ - sc->sc_stats.ast_rxeol++; - sc->sc_rxlink = NULL; - sc->sc_status &= ~HAL_INT_RXEOL; - } - - if (sc->sc_status) { - ath_hal_intrset(ah, 0); - ret |= FILTER_SCHEDULE_THREAD; - } - mtx_unlock_spin(&sc->sc_smtx); - return (ret); -} - -/* - * Interrupt handler. Most of the actual processing is deferred. - */ -void -ath_intr(void *arg) -{ - struct ath_softc *sc = arg; - struct ath_hal *ah = sc->sc_ah; - HAL_INT status; - - mtx_lock_spin(&sc->sc_smtx); - status = sc->sc_status; + ath_hal_getisr(ah, &status); /* NB: clears ISR too */ + DPRINTF(sc, ATH_DEBUG_INTR, "%s: status 0x%x\n", __func__, status); + status &= sc->sc_imask; /* discard unasked for bits */ if (status & HAL_INT_FATAL) { sc->sc_stats.ast_hardware++; ath_hal_intrset(ah, 0); /* disable intr's until reset */ @@ -786,7 +759,7 @@ } else if (status & HAL_INT_RXORN) { sc->sc_stats.ast_rxorn++; ath_hal_intrset(ah, 0); /* disable intr's until reset */ - ath_rxorn_proc(sc); + taskqueue_enqueue(sc->sc_tq, &sc->sc_rxorntask); } else { if (status & HAL_INT_SWBA) { /* @@ -797,18 +770,27 @@ */ ath_beacon_proc(sc, 0); } + if (status & HAL_INT_RXEOL) { + /* + * NB: the hardware should re-read the link when + * RXE bit is written, but it doesn't work at + * least on older hardware revs. + */ + sc->sc_stats.ast_rxeol++; + sc->sc_rxlink = NULL; + } if (status & HAL_INT_TXURN) { sc->sc_stats.ast_txurn++; /* bump tx trigger level */ ath_hal_updatetxtriglevel(ah, AH_TRUE); } if (status & HAL_INT_RX) - ath_rx_proc(sc); + taskqueue_enqueue(sc->sc_tq, &sc->sc_rxtask); if (status & HAL_INT_TX) - sc->tx_func(sc); + taskqueue_enqueue(sc->sc_tq, &sc->sc_txtask); if (status & HAL_INT_BMISS) { sc->sc_stats.ast_bmiss++; - ath_bmiss_proc(sc); + taskqueue_enqueue(sc->sc_tq, &sc->sc_bmisstask); } if (status & HAL_INT_MIB) { sc->sc_stats.ast_mib++; @@ -825,9 +807,6 @@ ath_hal_intrset(ah, sc->sc_imask); } } - /* Enable interrupts */ - ath_hal_intrset(ah, sc->sc_imask); - mtx_unlock_spin(&sc->sc_smtx); } static void @@ -854,7 +833,7 @@ } static void -ath_rxorn_proc(void *arg) +ath_rxorn_proc(void *arg, int pending) { struct ath_softc *sc = arg; struct ifnet *ifp = sc->sc_ifp; @@ -864,12 +843,12 @@ } static void -ath_bmiss_proc(void *arg) +ath_bmiss_proc(void *arg, int pending) { struct ath_softc *sc = arg; struct ieee80211com *ic = &sc->sc_ic; - DPRINTF(sc, ATH_DEBUG_ANY, "%s\n", __func__); + DPRINTF(sc, ATH_DEBUG_ANY, "%s: pending %u\n", __func__, pending); KASSERT(ic->ic_opmode == IEEE80211_M_STA, ("unexpect operating mode %u", ic->ic_opmode)); if (ic->ic_state == IEEE80211_S_RUN) { @@ -1009,9 +988,7 @@ */ if (sc->sc_needmib && ic->ic_opmode == IEEE80211_M_STA) sc->sc_imask |= HAL_INT_MIB; - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, sc->sc_imask); - mtx_unlock_spin(&sc->sc_smtx); ifp->if_drv_flags |= IFF_DRV_RUNNING; ic->ic_state = IEEE80211_S_INIT; @@ -1077,9 +1054,7 @@ !sc->sc_ledon); sc->sc_blinking = 0; } - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, 0); - mtx_unlock_spin(&sc->sc_smtx); } ath_draintxq(sc); if (!sc->sc_invalid) { @@ -1137,10 +1112,8 @@ c = ic->ic_curchan; sc->sc_curchan.channel = c->ic_freq; sc->sc_curchan.channelFlags = ath_chan2flags(ic, c); - - mtx_lock_spin(&sc->sc_smtx); + ath_hal_intrset(ah, 0); /* disable interrupts */ - mtx_unlock_spin(&sc->sc_smtx); ath_draintxq(sc); /* stop xmit side */ ath_stoprecv(sc); /* stop recv side */ /* NB: indicate channel change so we do a full reset */ @@ -1161,9 +1134,7 @@ if_printf(ifp, "%s: unable to start recv logic\n", __func__); if (ic->ic_state == IEEE80211_S_RUN) ath_beacon_config(sc); /* restart beacons */ - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, sc->sc_imask); - mtx_unlock_spin(&sc->sc_smtx); ath_start(ifp); /* restart xmit */ return 0; @@ -2369,18 +2340,12 @@ , bs.bs_cfpnext , bs.bs_timoffset ); - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, 0); - mtx_unlock_spin(&sc->sc_smtx); ath_hal_beacontimers(ah, &bs); sc->sc_imask |= HAL_INT_BMISS; - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, sc->sc_imask); - mtx_unlock_spin(&sc->sc_smtx); } else { - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, 0); - mtx_unlock_spin(&sc->sc_smtx); if (nexttbtt == intval) intval |= HAL_BEACON_RESET_TSF; if (ic->ic_opmode == IEEE80211_M_IBSS) { @@ -2417,9 +2382,7 @@ } ath_hal_beaconinit(ah, nexttbtt, intval); sc->sc_bmisscount = 0; - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, sc->sc_imask); - mtx_unlock_spin(&sc->sc_smtx); /* * When using a self-linked beacon descriptor in * ibss mode load it once here. @@ -2867,7 +2830,7 @@ } static void -ath_rx_proc(void *arg) +ath_rx_proc(void *arg, int npending) { #define PA2DESC(_sc, _pa) \ ((struct ath_desc *)((caddr_t)(_sc)->sc_rxdma.dd_desc + \ @@ -2889,7 +2852,7 @@ NET_LOCK_GIANT(); /* XXX */ - DPRINTF(sc, ATH_DEBUG_RX_PROC, "%s\n", __func__); + DPRINTF(sc, ATH_DEBUG_RX_PROC, "%s: pending %u\n", __func__, npending); ngood = 0; nf = ath_hal_getchannoise(ah, &sc->sc_curchan); tsf = ath_hal_gettsf64(ah); @@ -4010,7 +3973,7 @@ * for a single hardware transmit queue (e.g. 5210 and 5211). */ static void -ath_tx_proc_q0(void *arg) +ath_tx_proc_q0(void *arg, int npending) { struct ath_softc *sc = arg; struct ifnet *ifp = sc->sc_ifp; @@ -4033,7 +3996,7 @@ * for four hardware queues, 0-3 (e.g. 5212 w/ WME support). */ static void -ath_tx_proc_q0123(void *arg) +ath_tx_proc_q0123(void *arg, int npending) { struct ath_softc *sc = arg; struct ifnet *ifp = sc->sc_ifp; @@ -4069,7 +4032,7 @@ * Deferred processing of transmit interrupt. */ static void -ath_tx_proc(void *arg) +ath_tx_proc(void *arg, int npending) { struct ath_softc *sc = arg; struct ifnet *ifp = sc->sc_ifp; @@ -4373,9 +4336,7 @@ * hardware at the new frequency, and then re-enable * the relevant bits of the h/w. */ - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, 0); /* disable interrupts */ - mtx_unlock_spin(&sc->sc_smtx); ath_draintxq(sc); /* clear pending tx frames */ ath_stoprecv(sc); /* turn off frame recv */ if (!ath_hal_reset(ah, sc->sc_opmode, &hchan, AH_TRUE, &status)) { @@ -4429,9 +4390,7 @@ /* * Re-enable interrupts. */ - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, sc->sc_imask); - mtx_unlock_spin(&sc->sc_smtx); } return 0; } @@ -4537,9 +4496,7 @@ /* * NB: disable interrupts so we don't rx frames. */ - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, sc->sc_imask &~ HAL_INT_GLOBAL); - mtx_unlock_spin(&sc->sc_smtx); /* * Notify the rate control algorithm. */ @@ -4648,10 +4605,8 @@ sc->sc_halstats.ns_avgrssi = ATH_RSSI_DUMMY_MARKER; sc->sc_halstats.ns_avgtxrssi = ATH_RSSI_DUMMY_MARKER; } else { - mtx_lock_spin(&sc->sc_smtx); ath_hal_intrset(ah, sc->sc_imask &~ (HAL_INT_SWBA | HAL_INT_BMISS)); - mtx_unlock_spin(&sc->sc_smtx); sc->sc_imask &= ~(HAL_INT_SWBA | HAL_INT_BMISS); } done: ==== //depot/projects/soc2006/intr_filter/dev/ath/if_ath_pci.c#4 (text+ko) ==== @@ -168,8 +168,8 @@ goto bad1; } if (bus_setup_intr(dev, psc->sc_irq, - INTR_TYPE_NET | INTR_MPSAFE, ath_filter, - ath_intr, sc, &psc->sc_ih)) { + INTR_TYPE_NET | INTR_MPSAFE, + NULL, ath_intr, sc, &psc->sc_ih)) { device_printf(dev, "could not establish interrupt\n"); goto bad2; } @@ -194,14 +194,11 @@ } ATH_LOCK_INIT(sc); - mtx_init(&sc->sc_smtx, device_get_nameunit(dev), MTX_NETWORK_LOCK, - MTX_SPIN); error = ath_attach(pci_get_device(dev), sc); if (error == 0) return error; - mtx_destroy(&sc->sc_smtx); ATH_LOCK_DESTROY(sc); bus_dma_tag_destroy(sc->sc_dmat); bad3: ==== //depot/projects/soc2006/intr_filter/dev/ath/if_athvar.h#5 (text+ko) ==== @@ -223,13 +223,6 @@ u_int sc_mcastrate; /* ieee rate for mcastrateix */ u_int sc_txantenna; /* tx antenna (fixed or auto) */ HAL_INT sc_imask; /* interrupt mask copy */ - HAL_INT sc_status; - struct mtx sc_smtx; /* - * guard access to sc_status - * and to the interrupt handling - * registers (?!?!?!?!) - */ - void (*tx_func)(void *); u_int sc_keymax; /* size of key cache */ u_int8_t sc_keymap[ATH_KEYBYTES];/* key use bit map */ @@ -261,6 +254,7 @@ struct ath_descdma sc_rxdma; /* RX descriptos */ ath_bufhead sc_rxbuf; /* receive buffer */ u_int32_t *sc_rxlink; /* link ptr in last RX desc */ + struct task sc_rxtask; /* rx int processing */ struct task sc_rxorntask; /* rxorn int processing */ struct task sc_radartask; /* radar processing */ u_int8_t sc_defant; /* current default antenna */ @@ -276,6 +270,7 @@ u_int sc_txintrperiod;/* tx interrupt batching */ struct ath_txq sc_txq[HAL_NUM_TX_QUEUES]; struct ath_txq *sc_ac2q[5]; /* WME AC -> h/w q map */ + struct task sc_txtask; /* tx int processing */ struct ath_descdma sc_bdma; /* beacon descriptors */ ath_bufhead sc_bbuf; /* beacon buffers */ @@ -329,7 +324,6 @@ void ath_resume(struct ath_softc *); void ath_suspend(struct ath_softc *); void ath_shutdown(struct ath_softc *); -int ath_filter(void *); void ath_intr(void *); /* From owner-p4-projects@FreeBSD.ORG Mon Aug 21 19:44:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3A96316A4DD; Mon, 21 Aug 2006 19:44:56 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 14CEE16A4E0 for ; Mon, 21 Aug 2006 19:44:56 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A01DD43D6B for ; Mon, 21 Aug 2006 19:44:42 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LJifxW031657 for ; Mon, 21 Aug 2006 19:44:41 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LJif7Q031654 for perforce@freebsd.org; Mon, 21 Aug 2006 19:44:41 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 21 Aug 2006 19:44:41 GMT Message-Id: <200608211944.k7LJif7Q031654@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104708 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 19:44:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=104708 Change 104708 by gonzo@gonzo_hideout on 2006/08/21 19:44:01 o Disable libc_r and libthread_db build for MIPS (mimicrate arm behaviour). Affected files ... .. //depot/projects/mips2/src/lib/Makefile#2 edit Differences ... ==== //depot/projects/mips2/src/lib/Makefile#2 (text+ko) ==== @@ -73,7 +73,8 @@ .endif .if ${MACHINE_ARCH} != "arm" && ${MACHINE_ARCH} != "ia64" && \ - ${MACHINE_ARCH} != "powerpc" && ${MK_LIBC_R} != "no" + ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "mips" && \ + ${MK_LIBC_R} != "no" _libc_r= .endif @@ -111,7 +112,8 @@ _libthr= libthr .endif -.if ${MACHINE_ARCH} != "arm" && ${MACHINE_ARCH} != "powerpc" +.if ${MACHINE_ARCH} != "arm" && ${MACHINE_ARCH} != "powerpc" && \ + ${MACHINE_ARCH} != "mips" _libthread_db= libthread_db .endif From owner-p4-projects@FreeBSD.ORG Mon Aug 21 19:46:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 365F616A4E5; Mon, 21 Aug 2006 19:46:46 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0E73616A4E0 for ; Mon, 21 Aug 2006 19:46:46 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4368643DA9 for ; Mon, 21 Aug 2006 19:46:45 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LJkj15031793 for ; Mon, 21 Aug 2006 19:46:45 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LJkiZr031790 for perforce@freebsd.org; Mon, 21 Aug 2006 19:46:44 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 21 Aug 2006 19:46:44 GMT Message-Id: <200608211946.k7LJkiZr031790@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104709 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 19:46:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=104709 Change 104709 by gonzo@gonzo_hideout on 2006/08/21 19:46:14 o Merge host/network byte order conversion routines from NetBSD. Affected files ... .. //depot/projects/mips2/src/lib/libc/arm/net/htonl.S#2 edit .. //depot/projects/mips2/src/lib/libc/arm/net/htons.S#2 edit .. //depot/projects/mips2/src/lib/libc/arm/net/ntohl.S#2 edit .. //depot/projects/mips2/src/lib/libc/arm/net/ntohs.S#2 edit Differences ... ==== //depot/projects/mips2/src/lib/libc/arm/net/htonl.S#2 (text+ko) ==== ==== //depot/projects/mips2/src/lib/libc/arm/net/htons.S#2 (text+ko) ==== ==== //depot/projects/mips2/src/lib/libc/arm/net/ntohl.S#2 (text+ko) ==== ==== //depot/projects/mips2/src/lib/libc/arm/net/ntohs.S#2 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Mon Aug 21 20:07:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6923816A4E6; Mon, 21 Aug 2006 20:07:14 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2D3B616A4DE for ; Mon, 21 Aug 2006 20:07:14 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3C1DC43D6A for ; Mon, 21 Aug 2006 20:07:13 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LK7DjI037126 for ; Mon, 21 Aug 2006 20:07:13 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LK7DwP037123 for perforce@freebsd.org; Mon, 21 Aug 2006 20:07:13 GMT (envelope-from imp@freebsd.org) Date: Mon, 21 Aug 2006 20:07:13 GMT Message-Id: <200608212007.k7LK7DwP037123@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104712 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 20:07:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=104712 Change 104712 by imp@imp_lighthouse on 2006/08/21 20:06:20 IPFILTER now defaults to 'NO' because rescue has been broken all weekend. Affected files ... .. //depot/projects/arm/src/share/mk/bsd.own.mk#2 edit Differences ... ==== //depot/projects/arm/src/share/mk/bsd.own.mk#2 (text+ko) ==== @@ -315,7 +315,6 @@ I4B \ INET6 \ INFO \ - IPFILTER \ IPX \ KERBEROS \ LIB32 \ @@ -368,7 +367,8 @@ .for var in \ BIND_LIBS \ HESIOD \ - IDEA + IDEA \ + IPFILTER .if defined(WITH_${var}) && defined(WITHOUT_${var}) .error WITH_${var} and WITHOUT_${var} can't both be set. .endif From owner-p4-projects@FreeBSD.ORG Mon Aug 21 20:07:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8D8CF16A549; Mon, 21 Aug 2006 20:07:14 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6725F16A4E2 for ; Mon, 21 Aug 2006 20:07:14 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EBAC343D72 for ; Mon, 21 Aug 2006 20:07:13 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LK7DFU037138 for ; Mon, 21 Aug 2006 20:07:13 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LK7D1i037135 for perforce@freebsd.org; Mon, 21 Aug 2006 20:07:13 GMT (envelope-from imp@freebsd.org) Date: Mon, 21 Aug 2006 20:07:13 GMT Message-Id: <200608212007.k7LK7D1i037135@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104714 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 20:07:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=104714 Change 104714 by imp@imp_lighthouse on 2006/08/21 20:07:11 Initialize the SD card, the emac and try to actually read off the sd card. God save us all. Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#5 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#5 (text+ko) ==== @@ -26,7 +26,9 @@ #include +#include "emac.h" #include "lib.h" +#include "sd-card.h" #define SECOND 18 /* Circa that many ticks in a second. */ @@ -98,6 +100,8 @@ RBX_VERBOSE }; +unsigned char mac[6] = { 0x42, 0x53, 0x44, 0, 0, 1 }; + int dsk_start; static char cmd[512]; static char kname[1024]; @@ -184,6 +188,10 @@ int autoboot; ino_t ino; + EMAC_Init(); + sdcard_init(); + EMAC_SetMACAddress(mac); + dmadat = (void *)(0x20000000 + (1 << 20)); /* Process configuration file */ @@ -339,6 +347,5 @@ if (!OPT_CHECK(RBX_QUIET)) printf("%c\b", c = c << 8 | c >> 24); - // XXX actually read here! - return -1; + return (MCI_read((char *)buf, lba << 9, nblk << 9)); } From owner-p4-projects@FreeBSD.ORG Mon Aug 21 20:07:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C31316A4E5; Mon, 21 Aug 2006 20:07:18 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4193E16A4FB for ; Mon, 21 Aug 2006 20:07:18 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B132543D6B for ; Mon, 21 Aug 2006 20:07:13 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LK7D93037132 for ; Mon, 21 Aug 2006 20:07:13 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LK7DJt037129 for perforce@freebsd.org; Mon, 21 Aug 2006 20:07:13 GMT (envelope-from imp@freebsd.org) Date: Mon, 21 Aug 2006 20:07:13 GMT Message-Id: <200608212007.k7LK7DJt037129@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104713 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 20:07:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=104713 Change 104713 by imp@imp_lighthouse on 2006/08/21 20:06:44 Tweaks Affected files ... .. //depot/projects/arm/src/sys/arm/conf/KB920X#39 edit Differences ... ==== //depot/projects/arm/src/sys/arm/conf/KB920X#39 (text+ko) ==== @@ -65,8 +65,6 @@ options NO_FFS_SNAPSHOT options NO_SWAPPING device genclock -device random -device pty device loop device random device ether From owner-p4-projects@FreeBSD.ORG Mon Aug 21 20:40:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 523BF16A4E1; Mon, 21 Aug 2006 20:40:59 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 226B016A4DE for ; Mon, 21 Aug 2006 20:40:59 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BE41743D4C for ; Mon, 21 Aug 2006 20:40:58 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LKewmO038948 for ; Mon, 21 Aug 2006 20:40:58 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LKew3R038945 for perforce@freebsd.org; Mon, 21 Aug 2006 20:40:58 GMT (envelope-from imp@freebsd.org) Date: Mon, 21 Aug 2006 20:40:58 GMT Message-Id: <200608212040.k7LKew3R038945@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104719 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 20:40:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=104719 Change 104719 by imp@imp_lighthouse on 2006/08/21 20:40:40 Use the SPI boot arm_init.S file rather than our (wrong) one for iic. Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/boot2/Makefile#3 edit .. //depot/projects/arm/src/sys/boot/arm/at91/boot2/arm_init.s#2 delete Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/boot2/Makefile#3 (text+ko) ==== @@ -1,10 +1,12 @@ # $FreeBSD: src/sys/boot/arm/at91/bootspi/Makefile,v 1.1 2006/04/19 17:16:48 imp Exp $ +.PATH: ${.CURDIR}/../bootspi + BOOT_COMCONSOLE_SPEED?= 9600 P=boot2 FILES=${P} -SRCS=arm_init.s boot2.c ashldi3.c divsi3.S +SRCS=arm_init.S boot2.c ashldi3.c divsi3.S NO_MAN= LDFLAGS=-e 0 -T ${.CURDIR}/../linker.cfg OBJS+= ${SRCS:N*.h:R:S/$/.o/g} From owner-p4-projects@FreeBSD.ORG Mon Aug 21 20:58:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4506416A4E5; Mon, 21 Aug 2006 20:58:29 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1F6A416A4E0 for ; Mon, 21 Aug 2006 20:58:29 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 47AFF43D72 for ; Mon, 21 Aug 2006 20:58:23 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LKwNJo047771 for ; Mon, 21 Aug 2006 20:58:23 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LKwNOT047768 for perforce@freebsd.org; Mon, 21 Aug 2006 20:58:23 GMT (envelope-from imp@freebsd.org) Date: Mon, 21 Aug 2006 20:58:23 GMT Message-Id: <200608212058.k7LKwNOT047768@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104721 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 20:58:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=104721 Change 104721 by imp@imp_lighthouse on 2006/08/21 20:57:52 cooked mode Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#6 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#6 (text+ko) ==== @@ -138,7 +138,7 @@ xfsread(ino_t inode, void *buf, size_t nbyte) { if ((size_t)fsread(inode, buf, nbyte) != nbyte) { - printf("Invalid %s\n", "format"); + printf("Invalid %s\r\n", "format"); return -1; } return 0; @@ -213,13 +213,15 @@ for (;;) { if (!autoboot || !OPT_CHECK(RBX_QUIET)) - printf("\nFreeBSD/arm boot\n" - "Default: %s\n" + printf("\r\nFreeBSD/arm boot\r\n" + "Default: %s\r\n" "boot: ", kname); if (!autoboot || getc(5) == -1) getstr(); - else if (!autoboot || !OPT_CHECK(RBX_QUIET)) + else if (!autoboot || !OPT_CHECK(RBX_QUIET)) { + xputchar('\r'); xputchar('\n'); + } autoboot = 0; if (parse()) xputchar('\a'); @@ -241,7 +243,7 @@ if (!(ino = lookup(kname))) { if (!ls) - printf("No %s\n", kname); + printf("No %s\r\n", kname); return; } if (xfsread(ino, &eh, sizeof(eh))) From owner-p4-projects@FreeBSD.ORG Mon Aug 21 20:58:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B6B0F16A556; Mon, 21 Aug 2006 20:58:29 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 94CDF16A554 for ; Mon, 21 Aug 2006 20:58:29 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BEE4F43D64 for ; Mon, 21 Aug 2006 20:58:23 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LKwNYN047777 for ; Mon, 21 Aug 2006 20:58:23 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LKwNNU047774 for perforce@freebsd.org; Mon, 21 Aug 2006 20:58:23 GMT (envelope-from imp@freebsd.org) Date: Mon, 21 Aug 2006 20:58:23 GMT Message-Id: <200608212058.k7LKwNNU047774@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104722 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 20:58:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=104722 Change 104722 by imp@imp_lighthouse on 2006/08/21 20:58:02 Init bss Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#8 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#8 (text) ==== @@ -30,6 +30,9 @@ #include "at91rm9200.h" #include "at91rm9200_lowlevel.h" +extern void *__bss_start__; +extern void *__bss_end__; + #define BAUD 115200 #define AT91C_US_ASYNC_MODE (AT91C_US_USMODE_NORMAL | AT91C_US_NBSTOP_1_BIT | \ AT91C_US_PAR_NONE | AT91C_US_CHRL_8_BITS | AT91C_US_CLKS_CLOCK) @@ -42,6 +45,8 @@ void _init(void) { + int *i; + AT91PS_USART pUSART = (AT91PS_USART)AT91C_BASE_DBGU; AT91PS_PDC pPDC = (AT91PS_PDC)&(pUSART->US_RPR); @@ -195,4 +200,9 @@ pUSART->US_MR = AT91C_US_ASYNC_MODE; pUSART->US_CR = AT91C_US_TXEN; pUSART->US_CR = AT91C_US_RXEN; + + /* Zero BSS now that we have memory setup */ + i = (int *)__bss_start__; + while (i < (int *)__bss_end__) + *i++ = 0; } From owner-p4-projects@FreeBSD.ORG Mon Aug 21 21:12:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2D19716A4E2; Mon, 21 Aug 2006 21:12:42 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0B9B416A4DD for ; Mon, 21 Aug 2006 21:12:42 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C174A43D46 for ; Mon, 21 Aug 2006 21:12:41 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LLCfjr049698 for ; Mon, 21 Aug 2006 21:12:41 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LLCfJ7049695 for perforce@freebsd.org; Mon, 21 Aug 2006 21:12:41 GMT (envelope-from imp@freebsd.org) Date: Mon, 21 Aug 2006 21:12:41 GMT Message-Id: <200608212112.k7LLCfJ7049695@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104723 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 21:12:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=104723 Change 104723 by imp@imp_lighthouse on 2006/08/21 21:12:17 Get the types right for __bss_start__ and end. Turns out that they are declared by the linker script to be a common area, which means they are an array, not a pointer. Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#9 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#9 (text) ==== @@ -30,8 +30,8 @@ #include "at91rm9200.h" #include "at91rm9200_lowlevel.h" -extern void *__bss_start__; -extern void *__bss_end__; +extern int __bss_start__[]; +extern int __bss_end__[]; #define BAUD 115200 #define AT91C_US_ASYNC_MODE (AT91C_US_USMODE_NORMAL | AT91C_US_NBSTOP_1_BIT | \ From owner-p4-projects@FreeBSD.ORG Mon Aug 21 22:07:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8BAC916A504; Mon, 21 Aug 2006 22:07:56 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6A39516A501 for ; Mon, 21 Aug 2006 22:07:56 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1DE2443D45 for ; Mon, 21 Aug 2006 22:07:56 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LM7uBr055600 for ; Mon, 21 Aug 2006 22:07:56 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LM7t5P055597 for perforce@freebsd.org; Mon, 21 Aug 2006 22:07:55 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 21 Aug 2006 22:07:55 GMT Message-Id: <200608212207.k7LM7t5P055597@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104733 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 22:07:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=104733 Change 104733 by gonzo@gonzo_hideout on 2006/08/21 22:07:49 o Add _C_LABEL macros. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/asm.h#5 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/asm.h#5 (text+ko) ==== @@ -158,4 +158,14 @@ #define __FBSDID(s) /* nothing */ #endif /* not lint and not STRIP_FBSDID */ +#ifdef __ELF__ +# define _C_LABEL(x) x +#else +# ifdef __STDC__ +# define _C_LABEL(x) _ ## x +# else +# define _C_LABEL(x) _/**/x +# endif +#endif + #endif /* !_MACHINE_ASM_H_ */ From owner-p4-projects@FreeBSD.ORG Mon Aug 21 22:10:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D1E7F16A4E9; Mon, 21 Aug 2006 22:09:59 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AFD9B16A4DF for ; Mon, 21 Aug 2006 22:09:59 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5AAAE43D45 for ; Mon, 21 Aug 2006 22:09:59 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LM9xQM055679 for ; Mon, 21 Aug 2006 22:09:59 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LM9xG7055676 for perforce@freebsd.org; Mon, 21 Aug 2006 22:09:59 GMT (envelope-from imp@freebsd.org) Date: Mon, 21 Aug 2006 22:09:59 GMT Message-Id: <200608212209.k7LM9xG7055676@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104734 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 22:10:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=104734 Change 104734 by imp@imp_lighthouse on 2006/08/21 22:09:57 Fix block length calculations to be consistant. implement %d == %u for printf. lame but useful. nits we're now to 'not ufs'! progress Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#7 edit .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/mci_device.c#7 edit .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/mci_device.h#5 edit .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/printf.c#4 edit .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/sd-card.c#5 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#7 (text+ko) ==== @@ -160,7 +160,7 @@ s = cmd; for (;;) { - switch (c = getc(0)) { + switch (c = getc(10000)) { case 0: break; case '\177': @@ -188,6 +188,9 @@ int autoboot; ino_t ino; + if (kname[0]) + printf("bss not zero\r\n"); + EMAC_Init(); sdcard_init(); EMAC_SetMACAddress(mac); @@ -218,10 +221,8 @@ "boot: ", kname); if (!autoboot || getc(5) == -1) getstr(); - else if (!autoboot || !OPT_CHECK(RBX_QUIET)) { - xputchar('\r'); + else if (!autoboot || !OPT_CHECK(RBX_QUIET)) xputchar('\n'); - } autoboot = 0; if (parse()) xputchar('\a'); ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/mci_device.c#7 (text+ko) ==== @@ -162,6 +162,9 @@ unsigned int *dataBuffer, int sizeToRead) { + unsigned log2sl = pMCI_Device->pMCI_DeviceFeatures->READ_BL_LEN; + unsigned sectorLength = 1 << log2sl; + /////////////////////////////////////////////////////////////////////// if (pMCI_Device->pMCI_DeviceDesc->state != AT91C_MCI_IDLE) { #if IMP_DEBUG @@ -188,7 +191,7 @@ } // If source does not fit a begin of a block - if ((src & ((1 << pMCI_Device->pMCI_DeviceFeatures->READ_BL_LEN) - 1)) != 0) { + if ((src & (sectorLength - 1)) != 0) { #if IMP_DEBUG printf("4\r\n"); #endif @@ -197,7 +200,7 @@ // Test if the MMC supports Partial Read Block // ALWAYS SUPPORTED IN SD Memory Card - if( (sizeToRead < pMCI_Device->pMCI_DeviceFeatures->Max_Read_DataBlock_Length) + if( (sizeToRead < sectorLength) && (pMCI_Device->pMCI_DeviceFeatures->Read_Partial == 0x00) ) { #if IMP_DEBUG printf("5\r\n"); @@ -205,7 +208,7 @@ return AT91C_READ_ERROR; } - if( sizeToRead > pMCI_Device->pMCI_DeviceFeatures->Max_Read_DataBlock_Length) { + if( sizeToRead > sectorLength) { #if IMP_DEBUG printf("6\r\n"); #endif @@ -214,7 +217,7 @@ /////////////////////////////////////////////////////////////////////// // Init Mode Register - AT91C_BASE_MCI->MCI_MR |= ((pMCI_Device->pMCI_DeviceFeatures->Max_Read_DataBlock_Length << 16) | AT91C_MCI_PDCMODE); + AT91C_BASE_MCI->MCI_MR |= ((sectorLength << 16) | AT91C_MCI_PDCMODE); if (sizeToRead %4) sizeToRead = (sizeToRead /4)+1; @@ -251,6 +254,9 @@ unsigned int *dataBuffer, int sizeToWrite ) { + unsigned log2sl = MCI_Device.pMCI_DeviceFeatures->WRITE_BL_LEN; + unsigned sectorLength = 1 << log2sl; + /////////////////////////////////////////////////////////////////////// if( pMCI_Device->pMCI_DeviceDesc->state != AT91C_MCI_IDLE) return AT91C_WRITE_ERROR; @@ -262,15 +268,15 @@ return AT91C_WRITE_ERROR; // If source does not fit a begin of a block - if ( (dest % pMCI_Device->pMCI_DeviceFeatures->Max_Read_DataBlock_Length) != 0 ) + if ( dest % sectorLength != 0 ) return AT91C_WRITE_ERROR; // Test if the MMC supports Partial Write Block - if( (sizeToWrite < pMCI_Device->pMCI_DeviceFeatures->Max_Write_DataBlock_Length) - && (pMCI_Device->pMCI_DeviceFeatures->Write_Partial == 0x00) ) + if ((sizeToWrite < sectorLength) + && (pMCI_Device->pMCI_DeviceFeatures->Write_Partial == 0x00)) return AT91C_WRITE_ERROR; - if( sizeToWrite > pMCI_Device->pMCI_DeviceFeatures->Max_Write_DataBlock_Length ) + if (sizeToWrite > sectorLength) return AT91C_WRITE_ERROR; /////////////////////////////////////////////////////////////////////// @@ -449,27 +455,27 @@ f->Relative_Card_Address = 0; continue; } - f->READ_BL_LEN = ((tab_response[1] >> AT91C_CSD_RD_B_LEN_S) & AT91C_CSD_RD_B_LEN_M); - f->WRITE_BL_LEN = ((tab_response[3] >> AT91C_CSD_WBLEN_S) & AT91C_CSD_WBLEN_M ); - f->Max_Read_DataBlock_Length = 1 << f->READ_BL_LEN; - f->Max_Write_DataBlock_Length = 1 << f->WRITE_BL_LEN; - f->Sector_Size = 1 + ((tab_response[2] >> AT91C_CSD_v22_SECT_SIZE_S) & AT91C_CSD_v22_SECT_SIZE_M ); - f->Read_Partial = (tab_response[1] >> AT91C_CSD_RD_B_PAR_S) & AT91C_CSD_RD_B_PAR_M; - f->Write_Partial = (tab_response[3] >> AT91C_CSD_WBLOCK_P_S) & AT91C_CSD_WBLOCK_P_M; + printf("Response is %x %x %x %x\r\n", tab_response[0], + tab_response[1], tab_response[2], tab_response[3]) + f->READ_BL_LEN = ((tab_response[2] >> CSD__RD_B_LEN_S) & CSD__RD_B_LEN_M); + f->WRITE_BL_LEN = ((tab_response[3] >> CSD__WBLEN_S) & CSD__WBLEN_M ); + f->Sector_Size = 1 + ((tab_response[2] >> CSD__v22_SECT_SIZE_S) & CSD__v22_SECT_SIZE_M ); + f->Read_Partial = (tab_response[2] >> CSD__RD_B_PAR_S) & CSD__RD_B_PAR_M; + f->Write_Partial = (tab_response[3] >> CSD__WBLOCK_P_S) & CSD__WBLOCK_P_M; // None in MMC specification version 2.2 f->Erase_Block_Enable = 0; - f->Read_Block_Misalignment = (tab_response[1] >> AT91C_CSD_RD_B_MIS_S) & AT91C_CSD_RD_B_MIS_M; - f->Write_Block_Misalignment = (tab_response[1] >> AT91C_CSD_WR_B_MIS_S) & AT91C_CSD_WR_B_MIS_M; + f->Read_Block_Misalignment = (tab_response[2] >> CSD__RD_B_MIS_S) & CSD__RD_B_MIS_M; + f->Write_Block_Misalignment = (tab_response[2] >> CSD__WR_B_MIS_S) & CSD__WR_B_MIS_M; //// Compute Memory Capacity // compute MULT - mult = 1 << ( ((tab_response[2] >> AT91C_CSD_C_SIZE_M_S) & AT91C_CSD_C_SIZE_M_M) + 2 ); + mult = 1 << ( ((tab_response[2] >> CSD__C_SIZE_M_S) & CSD__C_SIZE_M_M) + 2 ); // compute MSB of C_SIZE - blocknr = ((tab_response[1] >> AT91C_CSD_CSIZE_H_S) & AT91C_CSD_CSIZE_H_M) << 2; + blocknr = ((tab_response[1] >> CSD__CSIZE_H_S) & CSD__CSIZE_H_M) << 2; // compute MULT * (LSB of C-SIZE + MSB already computed + 1) = BLOCKNR - blocknr = mult * ( ( blocknr + ( (tab_response[2] >> AT91C_CSD_CSIZE_L_S) & AT91C_CSD_CSIZE_L_M) ) + 1 ); - f->Memory_Capacity = f->Max_Read_DataBlock_Length * blocknr; + blocknr = mult * ( ( blocknr + ( (tab_response[2] >> CSD__CSIZE_L_S) & CSD__CSIZE_L_M) ) + 1 ); + f->Memory_Capacity = (1 << f->READ_BL_LEN) * blocknr; //// End of Compute Memory Capacity } // XXX warner hacked this @@ -577,40 +583,41 @@ if (AT91F_MCI_GetCSD(f->Relative_Card_Address,tab_response) != AT91C_CMD_SEND_OK) return AT91C_INIT_ERROR; - f->READ_BL_LEN = 1 << ((tab_response[1] >> AT91C_CSD_RD_B_LEN_S) & - AT91C_CSD_RD_B_LEN_M); - f->WRITE_BL_LEN = 1 << ((tab_response[3] >> AT91C_CSD_WBLEN_S) & - AT91C_CSD_WBLEN_M); - f->Max_Read_DataBlock_Length = 1 << f->READ_BL_LEN; - f->Max_Write_DataBlock_Length = 1 << f->WRITE_BL_LEN; - f->Sector_Size = 1 + ((tab_response[2] >> AT91C_CSD_v21_SECT_SIZE_S) & - AT91C_CSD_v21_SECT_SIZE_M); - f->Read_Partial = (tab_response[1] >> AT91C_CSD_RD_B_PAR_S) & - AT91C_CSD_RD_B_PAR_M; - f->Write_Partial = (tab_response[3] >> AT91C_CSD_WBLOCK_P_S) & - AT91C_CSD_WBLOCK_P_M; - f->Erase_Block_Enable = (tab_response[3] >> AT91C_CSD_v21_ER_BLEN_EN_S) & - AT91C_CSD_v21_ER_BLEN_EN_M; - f->Read_Block_Misalignment = (tab_response[1] >> AT91C_CSD_RD_B_MIS_S) & - AT91C_CSD_RD_B_MIS_M; - f->Write_Block_Misalignment = (tab_response[1] >> AT91C_CSD_WR_B_MIS_S) & - AT91C_CSD_WR_B_MIS_M; + printf("Response is %x %x %x %x\r\n", tab_response[0], + tab_response[1], tab_response[2], tab_response[3]); + f->READ_BL_LEN = (tab_response[1] >> CSD_1_RD_B_LEN_S) & + CSD_1_RD_B_LEN_M; + f->WRITE_BL_LEN = (tab_response[3] >> CSD_3_WBLEN_S) & + CSD_3_WBLEN_M; + f->Sector_Size = 1 + ((tab_response[2] >> CSD_2_v21_SECT_SIZE_S) & + CSD_2_v21_SECT_SIZE_M); + f->Read_Partial = (tab_response[1] >> CSD_1_RD_B_PAR_S) & + CSD_1_RD_B_PAR_M; + f->Write_Partial = (tab_response[3] >> CSD_3_WBLOCK_P_S) & + CSD_3_WBLOCK_P_M; + f->Erase_Block_Enable = (tab_response[2] >> CSD_2_v21_ER_BLEN_EN_S) & + CSD_2_v21_ER_BLEN_EN_M; + f->Read_Block_Misalignment = (tab_response[1] >> CSD_1_RD_B_MIS_S) & + CSD_1_RD_B_MIS_M; + f->Write_Block_Misalignment = (tab_response[1] >> CSD_1_WR_B_MIS_S) & + CSD_1_WR_B_MIS_M; //// Compute Memory Capacity // compute MULT - mult = 1 << ( ((tab_response[2] >> AT91C_CSD_C_SIZE_M_S) & - AT91C_CSD_C_SIZE_M_M) + 2 ); + mult = 1 << ( ((tab_response[2] >> CSD_2_C_SIZE_M_S) & + CSD_2_C_SIZE_M_M) + 2 ); // compute MSB of C_SIZE - blocknr = ((tab_response[1] >> AT91C_CSD_CSIZE_H_S) & - AT91C_CSD_CSIZE_H_M) << 2; + blocknr = ((tab_response[1] >> CSD_1_CSIZE_H_S) & + CSD_1_CSIZE_H_M) << 2; // compute MULT * (LSB of C-SIZE + MSB already computed + 1) = BLOCKNR - blocknr = mult * ((blocknr + ((tab_response[2] >> AT91C_CSD_CSIZE_L_S) & - AT91C_CSD_CSIZE_L_M)) + 1); - f->Memory_Capacity = f->Max_Read_DataBlock_Length * blocknr; + blocknr = mult * ((blocknr + ((tab_response[2] >> CSD_2_CSIZE_L_S) & + CSD_2_CSIZE_L_M)) + 1); + f->Memory_Capacity = (1 << f->READ_BL_LEN) * blocknr; //// End of Compute Memory Capacity if (AT91F_MCI_SDCard_SetBusWidth(pMCI_Device) != AT91C_CMD_SEND_OK) return AT91C_INIT_ERROR; - if (AT91F_MCI_SetBlocklength(f->Max_Read_DataBlock_Length) != - AT91C_CMD_SEND_OK) + if (AT91F_MCI_SetBlocklength(1 << f->READ_BL_LEN) != AT91C_CMD_SEND_OK) return AT91C_INIT_ERROR; + printf("Found SD card %u bytes in size %u %u\r\n", f->Memory_Capacity, + blocknr, mult); return AT91C_INIT_OK; } ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/mci_device.h#5 (text+ko) ==== @@ -99,8 +99,6 @@ unsigned int Relative_Card_Address; // RCA unsigned int READ_BL_LEN; unsigned int WRITE_BL_LEN; - unsigned int Max_Read_DataBlock_Length; // 2^(READ_BL_LEN) in CSD - unsigned int Max_Write_DataBlock_Length; // 2^(WRITE_BL_LEN) in CSD unsigned char Read_Partial; // READ_BL_PARTIAL unsigned char Write_Partial; // WRITE_BL_PARTIAL unsigned char Erase_Block_Enable; // ERASE_BLK_EN @@ -308,99 +306,99 @@ ///////////////////////////////////////////////////////////////////////////////////////////////////// // MMC CSD register header File -// AT91C_CSD_xxx_S for shift value -// AT91C_CSD_xxx_M for mask value +// CSD_x_xxx_S for shift value for word x +// CSD_x_xxx_M for mask value for word x ///////////////////////////////////////////////////////////////////////////////////////////////////// // First Response INT <=> CSD[3] : bits 0 to 31 -#define AT91C_CSD_BIT0_S 0 // [0:0] -#define AT91C_CSD_BIT0_M 0x01 -#define AT91C_CSD_CRC_S 1 // [7:1] -#define AT91C_CSD_CRC_M 0x7F -#define AT91C_CSD_MMC_ECC_S 8 // [9:8] reserved for MMC compatibility -#define AT91C_CSD_MMC_ECC_M 0x03 -#define AT91C_CSD_FILE_FMT_S 10 // [11:10] -#define AT91C_CSD_FILE_FMT_M 0x03 -#define AT91C_CSD_TMP_WP_S 12 // [12:12] -#define AT91C_CSD_TMP_WP_M 0x01 -#define AT91C_CSD_PERM_WP_S 13 // [13:13] -#define AT91C_CSD_PERM_WP_M 0x01 -#define AT91C_CSD_COPY_S 14 // [14:14] -#define AT91C_CSD_COPY_M 0x01 -#define AT91C_CSD_FILE_FMT_GRP_S 15 // [15:15] -#define AT91C_CSD_FILE_FMT_GRP_M 0x01 +#define CSD_3_BIT0_S 0 // [0:0] +#define CSD_3_BIT0_M 0x01 +#define CSD_3_CRC_S 1 // [7:1] +#define CSD_3_CRC_M 0x7F +#define CSD_3_MMC_ECC_S 8 // [9:8] reserved for MMC compatibility +#define CSD_3_MMC_ECC_M 0x03 +#define CSD_3_FILE_FMT_S 10 // [11:10] +#define CSD_3_FILE_FMT_M 0x03 +#define CSD_3_TMP_WP_S 12 // [12:12] +#define CSD_3_TMP_WP_M 0x01 +#define CSD_3_PERM_WP_S 13 // [13:13] +#define CSD_3_PERM_WP_M 0x01 +#define CSD_3_COPY_S 14 // [14:14] +#define CSD_3_COPY_M 0x01 +#define CSD_3_FILE_FMT_GRP_S 15 // [15:15] +#define CSD_3_FILE_FMT_GRP_M 0x01 // reserved 16 // [20:16] // reserved 0x1F -#define AT91C_CSD_WBLOCK_P_S 21 // [21:21] -#define AT91C_CSD_WBLOCK_P_M 0x01 -#define AT91C_CSD_WBLEN_S 22 // [25:22] -#define AT91C_CSD_WBLEN_M 0x0F -#define AT91C_CSD_R2W_F_S 26 // [28:26] -#define AT91C_CSD_R2W_F_M 0x07 -#define AT91C_CSD_MMC_DEF_ECC_S 29 // [30:29] reserved for MMC compatibility -#define AT91C_CSD_MMC_DEF_ECC_M 0x03 -#define AT91C_CSD_WP_GRP_EN_S 31 // [31:31] -#define AT91C_CSD_WP_GRP_EN_M 0x01 +#define CSD_3_WBLOCK_P_S 21 // [21:21] +#define CSD_3_WBLOCK_P_M 0x01 +#define CSD_3_WBLEN_S 22 // [25:22] +#define CSD_3_WBLEN_M 0x0F +#define CSD_3_R2W_F_S 26 // [28:26] +#define CSD_3_R2W_F_M 0x07 +#define CSD_3_MMC_DEF_ECC_S 29 // [30:29] reserved for MMC compatibility +#define CSD_3_MMC_DEF_ECC_M 0x03 +#define CSD_3_WP_GRP_EN_S 31 // [31:31] +#define CSD_3_WP_GRP_EN_M 0x01 // Seconde Response INT <=> CSD[2] : bits 32 to 63 -#define AT91C_CSD_v21_WP_GRP_SIZE_S 0 // [38:32] -#define AT91C_CSD_v21_WP_GRP_SIZE_M 0x7F -#define AT91C_CSD_v21_SECT_SIZE_S 7 // [45:39] -#define AT91C_CSD_v21_SECT_SIZE_M 0x7F -#define AT91C_CSD_v21_ER_BLEN_EN_S 14 // [46:46] -#define AT91C_CSD_v21_ER_BLEN_EN_M 0x01 +#define CSD_2_v21_WP_GRP_SIZE_S 0 // [38:32] +#define CSD_2_v21_WP_GRP_SIZE_M 0x7F +#define CSD_2_v21_SECT_SIZE_S 7 // [45:39] +#define CSD_2_v21_SECT_SIZE_M 0x7F +#define CSD_2_v21_ER_BLEN_EN_S 14 // [46:46] +#define CSD_2_v21_ER_BLEN_EN_M 0x01 -#define AT91C_CSD_v22_WP_GRP_SIZE_S 0 // [36:32] -#define AT91C_CSD_v22_WP_GRP_SIZE_M 0x1F -#define AT91C_CSD_v22_ER_GRP_SIZE_S 5 // [41:37] -#define AT91C_CSD_v22_ER_GRP_SIZE_M 0x1F -#define AT91C_CSD_v22_SECT_SIZE_S 10 // [46:42] -#define AT91C_CSD_v22_SECT_SIZE_M 0x1F +#define CSD_2_v22_WP_GRP_SIZE_S 0 // [36:32] +#define CSD_2_v22_WP_GRP_SIZE_M 0x1F +#define CSD_2_v22_ER_GRP_SIZE_S 5 // [41:37] +#define CSD_2_v22_ER_GRP_SIZE_M 0x1F +#define CSD_2_v22_SECT_SIZE_S 10 // [46:42] +#define CSD_2_v22_SECT_SIZE_M 0x1F -#define AT91C_CSD_C_SIZE_M_S 15 // [49:47] -#define AT91C_CSD_C_SIZE_M_M 0x07 -#define AT91C_CSD_VDD_WMAX_S 18 // [52:50] -#define AT91C_CSD_VDD_WMAX_M 0x07 -#define AT91C_CSD_VDD_WMIN_S 21 // [55:53] -#define AT91C_CSD_VDD_WMIN_M 0x07 -#define AT91C_CSD_RCUR_MAX_S 24 // [58:56] -#define AT91C_CSD_RCUR_MAX_M 0x07 -#define AT91C_CSD_RCUR_MIN_S 27 // [61:59] -#define AT91C_CSD_RCUR_MIN_M 0x07 -#define AT91C_CSD_CSIZE_L_S 30 // [63:62] <=> 2 LSB of CSIZE -#define AT91C_CSD_CSIZE_L_M 0x03 +#define CSD_2_C_SIZE_M_S 15 // [49:47] +#define CSD_2_C_SIZE_M_M 0x07 +#define CSD_2_VDD_WMAX_S 18 // [52:50] +#define CSD_2_VDD_WMAX_M 0x07 +#define CSD_2_VDD_WMIN_S 21 // [55:53] +#define CSD_2_VDD_WMIN_M 0x07 +#define CSD_2_RCUR_MAX_S 24 // [58:56] +#define CSD_2_RCUR_MAX_M 0x07 +#define CSD_2_RCUR_MIN_S 27 // [61:59] +#define CSD_2_RCUR_MIN_M 0x07 +#define CSD_2_CSIZE_L_S 30 // [63:62] <=> 2 LSB of CSIZE +#define CSD_2_CSIZE_L_M 0x03 // Third Response INT <=> CSD[1] : bits 64 to 95 -#define AT91C_CSD_CSIZE_H_S 0 // [73:64] <=> 10 MSB of CSIZE -#define AT91C_CSD_CSIZE_H_M 0x03FF +#define CSD_1_CSIZE_H_S 0 // [73:64] <=> 10 MSB of CSIZE +#define CSD_1_CSIZE_H_M 0x03FF // reserved 10 // [75:74] // reserved 0x03 -#define AT91C_CSD_DSR_I_S 12 // [76:76] -#define AT91C_CSD_DSR_I_M 0x01 -#define AT91C_CSD_RD_B_MIS_S 13 // [77:77] -#define AT91C_CSD_RD_B_MIS_M 0x01 -#define AT91C_CSD_WR_B_MIS_S 14 // [78:78] -#define AT91C_CSD_WR_B_MIS_M 0x01 -#define AT91C_CSD_RD_B_PAR_S 15 // [79:79] -#define AT91C_CSD_RD_B_PAR_M 0x01 -#define AT91C_CSD_RD_B_LEN_S 16 // [83:80] -#define AT91C_CSD_RD_B_LEN_M 0x0F -#define AT91C_CSD_CCC_S 20 // [95:84] -#define AT91C_CSD_CCC_M 0x0FFF +#define CSD_1_DSR_I_S 12 // [76:76] +#define CSD_1_DSR_I_M 0x01 +#define CSD_1_RD_B_MIS_S 13 // [77:77] +#define CSD_1_RD_B_MIS_M 0x01 +#define CSD_1_WR_B_MIS_S 14 // [78:78] +#define CSD_1_WR_B_MIS_M 0x01 +#define CSD_1_RD_B_PAR_S 15 // [79:79] +#define CSD_1_RD_B_PAR_M 0x01 +#define CSD_1_RD_B_LEN_S 16 // [83:80] +#define CSD_1_RD_B_LEN_M 0x0F +#define CSD_1_CCC_S 20 // [95:84] +#define CSD_1_CCC_M 0x0FFF // Fourth Response INT <=> CSD[0] : bits 96 to 127 -#define AT91C_CSD_TRANS_SPEED_S 0 // [103:96] -#define AT91C_CSD_TRANS_SPEED_M 0xFF -#define AT91C_CSD_NSAC_S 8 // [111:104] -#define AT91C_CSD_NSAC_M 0xFF -#define AT91C_CSD_TAAC_S 16 // [119:112] -#define AT91C_CSD_TAAC_M 0xFF +#define CSD_0_TRANS_SPEED_S 0 // [103:96] +#define CSD_0_TRANS_SPEED_M 0xFF +#define CSD_0_NSAC_S 8 // [111:104] +#define CSD_0_NSAC_M 0xFF +#define CSD_0_TAAC_S 16 // [119:112] +#define CSD_0_TAAC_M 0xFF // reserved 24 // [121:120] // reserved 0x03 -#define AT91C_CSD_MMC_SPEC_VERS_S 26 // [125:122] reserved for MMC compatibility -#define AT91C_CSD_MMC_SPEC_VERS_M 0x0F -#define AT91C_CSD_STRUCT_S 30 // [127:126] -#define AT91C_CSD_STRUCT_M 0x03 +#define CSD_0_MMC_SPEC_VERS_S 26 // [125:122] reserved for MMC compatibility +#define CSD_0_MMC_SPEC_VERS_M 0x0F +#define CSD_0_STRUCT_S 30 // [127:126] +#define CSD_0_STRUCT_M 0x03 ///////////////////////////////////////////////////////////////////////////////////////////////////// ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/printf.c#4 (text+ko) ==== @@ -42,6 +42,7 @@ for (s = va_arg(ap, char *); *s; s++) putchar(*s); continue; + case 'd': /* A lie, always prints unsigned */ case 'u': u = va_arg(ap, unsigned); s = buf; ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/sd-card.c#5 (text+ko) ==== @@ -47,6 +47,8 @@ #include "lib.h" #include "sd-card.h" +#define IMP_DEBUG 1 + #define AT91C_MCI_TIMEOUT 1000000 /* For AT91F_MCIDeviceWaitReady */ #define BUFFER_SIZE_MCI_DEVICE 512 #define MASTER_CLOCK 60000000 @@ -96,7 +98,7 @@ int MCI_write (unsigned dest, char* source, unsigned length) { - unsigned sectorLength = MCI_Device.pMCI_DeviceFeatures->Max_Read_DataBlock_Lenfgth; + unsigned sectorLength = 1 << MCI_Device.pMCI_DeviceFeatures->WRITE_BL_LEN; unsigned offset = dest % sectorLength; AT91S_MCIDeviceStatus status; int sizeToWrite; @@ -169,15 +171,16 @@ int MCI_read(char* dest, unsigned source, unsigned length) { - unsigned sectorLength = MCI_Device.pMCI_DeviceFeatures->Max_Read_DataBlock_Length; unsigned log2sl = MCI_Device.pMCI_DeviceFeatures->READ_BL_LEN; - unsigned slmask = ((1 << log2sl) - 1); + unsigned sectorLength = 1 << log2sl; + unsigned slmask = sectorLength - 1; // unsigned sector = (unsigned)source >> log2sl; unsigned offset = (unsigned)source & slmask; AT91S_MCIDeviceStatus status; int sizeToRead; unsigned int *walker; + printf("sector length is %d\r\n", sectorLength); #if IMP_DEBUG printf("Reading 0x%x bytes into ARM Addr 0x%x from card offset 0x%x\r\n", length, dest, source); @@ -279,8 +282,8 @@ MCI_Device_Features.Relative_Card_Address = 0; MCI_Device_Features.Card_Inserted = AT91C_SD_CARD_INSERTED; - MCI_Device_Features.Max_Read_DataBlock_Length = 0; - MCI_Device_Features.Max_Write_DataBlock_Length = 0; + MCI_Device_Features.READ_BL_LEN = 0; + MCI_Device_Features.WRITE_BL_LEN = 0; MCI_Device_Features.Read_Partial = 0; MCI_Device_Features.Write_Partial = 0; MCI_Device_Features.Erase_Block_Enable = 0; From owner-p4-projects@FreeBSD.ORG Mon Aug 21 22:34:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2F21616A4E1; Mon, 21 Aug 2006 22:34:39 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0AA5516A4DF for ; Mon, 21 Aug 2006 22:34:39 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CDEFC43D5A for ; Mon, 21 Aug 2006 22:34:31 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LMYV9a056932 for ; Mon, 21 Aug 2006 22:34:31 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LMYVP4056929 for perforce@freebsd.org; Mon, 21 Aug 2006 22:34:31 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 21 Aug 2006 22:34:31 GMT Message-Id: <200608212234.k7LMYVP4056929@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104738 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 22:34:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=104738 Change 104738 by gonzo@gonzo_hideout on 2006/08/21 22:33:43 o Get rid of x86_64 bits. o Fixed Elf32_Auxinfo struct: a_un should contain a_ptr and a_fcn fields. o Added MIPS-specific relocations from NetBSD tree. o ELF_TARGET_DATA considers target endianess. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/elf.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/elf.h#3 (text+ko) ==== @@ -1,3 +1,5 @@ +/* $NetBSD: elf_machdep.h,v 1.10 2005/12/11 12:18:09 christos Exp $ */ + /*- * Copyright (c) 1996-1997 John D. Polstra. * All rights reserved. @@ -40,9 +42,9 @@ #include /* Definitions common to all 64 bit architectures. */ #include -#define ELF_ARCH EM_X86_64 +#define ELF_ARCH EM_MIPS -#define ELF_MACHINE_OK(x) ((x) == EM_X86_64) +#define ELF_MACHINE_OK(x) ((x) == EM_MIPS) /* * Auxiliary vector entries for passing information to the interpreter. @@ -54,6 +56,8 @@ int a_type; /* Entry type. */ union { int a_val; /* Integer value. */ + void *a_ptr; /* Address. */ + void (*a_fcn)(void); /* Function pointer (not used). */ } a_un; } Elf32_Auxinfo; @@ -103,36 +107,55 @@ #define AT_COUNT 15 /* Count of defined aux entry types. */ +/* mips relocs. */ + +#define R_MIPS_NONE 0 +#define R_MIPS_16 1 +#define R_MIPS_32 2 +#define R_MIPS_REL32 3 +#define R_MIPS_REL R_MIPS_REL32 +#define R_MIPS_26 4 +#define R_MIPS_HI16 5 /* high 16 bits of symbol value */ +#define R_MIPS_LO16 6 /* low 16 bits of symbol value */ +#define R_MIPS_GPREL16 7 /* GP-relative reference */ +#define R_MIPS_LITERAL 8 /* Reference to literal section */ +#define R_MIPS_GOT16 9 /* Reference to global offset table */ +#define R_MIPS_GOT R_MIPS_GOT16 +#define R_MIPS_PC16 10 /* 16 bit PC relative reference */ +#define R_MIPS_CALL16 11 /* 16 bit call thru glbl offset tbl */ +#define R_MIPS_CALL R_MIPS_CALL16 +#define R_MIPS_GPREL32 12 + +/* 13, 14, 15 are not defined at this point. */ +#define R_MIPS_UNUSED1 13 +#define R_MIPS_UNUSED2 14 +#define R_MIPS_UNUSED3 15 + /* - * Relocation types. + * The remaining relocs are apparently part of the 64-bit Irix ELF ABI. */ +#define R_MIPS_SHIFT5 16 +#define R_MIPS_SHIFT6 17 -#define R_X86_64_NONE 0 /* No relocation. */ -#define R_X86_64_64 1 /* Add 64 bit symbol value. */ -#define R_X86_64_PC32 2 /* PC-relative 32 bit signed sym value. */ -#define R_X86_64_GOT32 3 /* PC-relative 32 bit GOT offset. */ -#define R_X86_64_PLT32 4 /* PC-relative 32 bit PLT offset. */ -#define R_X86_64_COPY 5 /* Copy data from shared object. */ -#define R_X86_64_GLOB_DAT 6 /* Set GOT entry to data address. */ -#define R_X86_64_JMP_SLOT 7 /* Set GOT entry to code address. */ -#define R_X86_64_RELATIVE 8 /* Add load address of shared object. */ -#define R_X86_64_GOTPCREL 9 /* Add 32 bit signed pcrel offset to GOT. */ -#define R_X86_64_32 10 /* Add 32 bit zero extended symbol value */ -#define R_X86_64_32S 11 /* Add 32 bit sign extended symbol value */ -#define R_X86_64_16 12 /* Add 16 bit zero extended symbol value */ -#define R_X86_64_PC16 13 /* Add 16 bit signed extended pc relative symbol value */ -#define R_X86_64_8 14 /* Add 8 bit zero extended symbol value */ -#define R_X86_64_PC8 15 /* Add 8 bit signed extended pc relative symbol value */ -#define R_X86_64_DTPMOD64 16 /* ID of module containing symbol */ -#define R_X86_64_DTPOFF64 17 /* Offset in TLS block */ -#define R_X86_64_TPOFF64 18 /* Offset in static TLS block */ -#define R_X86_64_TLSGD 19 /* PC relative offset to GD GOT entry */ -#define R_X86_64_TLSLD 20 /* PC relative offset to LD GOT entry */ -#define R_X86_64_DTPOFF32 21 /* Offset in TLS block */ -#define R_X86_64_GOTTPOFF 22 /* PC relative offset to IE GOT entry */ -#define R_X86_64_TPOFF32 23 /* Offset in static TLS block */ - -#define R_X86_64_COUNT 24 /* Count of defined relocation types. */ +#define R_MIPS_64 18 +#define R_MIPS_GOT_DISP 19 +#define R_MIPS_GOT_PAGE 20 +#define R_MIPS_GOT_OFST 21 +#define R_MIPS_GOT_HI16 22 +#define R_MIPS_GOT_LO16 23 +#define R_MIPS_SUB 24 +#define R_MIPS_INSERT_A 25 +#define R_MIPS_INSERT_B 26 +#define R_MIPS_DELETE 27 +#define R_MIPS_HIGHER 28 +#define R_MIPS_HIGHEST 29 +#define R_MIPS_CALL_HI16 30 +#define R_MIPS_CALL_LO16 31 +#define R_MIPS_SCN_DISP 32 +#define R_MIPS_REL16 33 +#define R_MIPS_ADD_IMMEDIATE 34 +#define R_MIPS_PJUMP 35 +#define R_MIPS_RELGOT 36 /* Define "machine" characteristics */ #if __ELF_WORD_SIZE == 32 @@ -140,8 +163,14 @@ #else #define ELF_TARG_CLASS ELFCLASS64 #endif + +#ifdef __MIPSEB__ +#define ELF_TARG_DATA ELFDATA2MSB +#else #define ELF_TARG_DATA ELFDATA2LSB -#define ELF_TARG_MACH EM_X86_64 +#endif + +#define ELF_TARG_MACH EM_MIPS #define ELF_TARG_VER 1 #endif /* !_MACHINE_ELF_H_ */ From owner-p4-projects@FreeBSD.ORG Mon Aug 21 22:45:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E483E16A4F3; Mon, 21 Aug 2006 22:45:48 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9923116A4E9 for ; Mon, 21 Aug 2006 22:45:48 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C116A43D5E for ; Mon, 21 Aug 2006 22:45:46 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LMjkfI057437 for ; Mon, 21 Aug 2006 22:45:46 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LMjkeK057434 for perforce@freebsd.org; Mon, 21 Aug 2006 22:45:46 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 21 Aug 2006 22:45:46 GMT Message-Id: <200608212245.k7LMjkeK057434@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104739 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 22:45:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=104739 Change 104739 by gonzo@gonzo_hideout on 2006/08/21 22:45:22 o Replace NetBSD's nanf.c with infinity.c that contains IEEE __infinity and __nan values for MIPS. Affected files ... .. //depot/projects/mips2/src/lib/libc/mips/gen/infinity.c#1 add .. //depot/projects/mips2/src/lib/libc/mips/gen/nanf.c#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Mon Aug 21 23:57:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 34A7516A4E2; Mon, 21 Aug 2006 23:57:15 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1200D16A4DD for ; Mon, 21 Aug 2006 23:57:15 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B6F9643D45 for ; Mon, 21 Aug 2006 23:57:14 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7LNvETg061784 for ; Mon, 21 Aug 2006 23:57:14 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7LNvEwK061781 for perforce@freebsd.org; Mon, 21 Aug 2006 23:57:14 GMT (envelope-from imp@freebsd.org) Date: Mon, 21 Aug 2006 23:57:14 GMT Message-Id: <200608212357.k7LNvEwK061781@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104740 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Aug 2006 23:57:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=104740 Change 104740 by imp@imp_lighthouse on 2006/08/21 23:57:05 Restore missing bits from x86 boot2. We can now read a kernel, it seems, at least up through offset 0x20fe00, or 2,162,176 (which should be more than enough to load a 1MB kernel...) Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#8 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#8 (text+ko) ==== @@ -102,10 +102,11 @@ unsigned char mac[6] = { 0x42, 0x53, 0x44, 0, 0, 1 }; -int dsk_start; +unsigned dsk_start; static char cmd[512]; static char kname[1024]; static uint32_t opts; +static int dsk_meta; //static int comspeed = SIOSPD; static void load(void); @@ -138,7 +139,7 @@ xfsread(ino_t inode, void *buf, size_t nbyte) { if ((size_t)fsread(inode, buf, nbyte) != nbyte) { - printf("Invalid %s\r\n", "format"); + printf("Invalid %s\r\n", "sector"); return -1; } return 0; @@ -250,7 +251,7 @@ if (xfsread(ino, &eh, sizeof(eh))) return; if (!IS_ELF(eh)) { - printf("Invalid format\r\n"); + printf("Invalid %s\r\n", "format"); return; } fs_off = eh.e_phoff; @@ -325,7 +326,7 @@ struct dos_partition *dp; struct disklabel *d; char *sec; - unsigned sl; + int i; if (!dsk_meta) { sec = dmadat->secbuf; @@ -333,12 +334,29 @@ if (drvread(sec, DOSBBSECTOR, 1)) return -1; dp = (void *)(sec + DOSPARTOFF); - sl = 1; + for (i = 0; i < NDOSPART; i++) { + if (dp[i].dp_typ == DOSPTYP_386BSD) + break; + } + if (i == NDOSPART) { + printf("No BSD partition found\r\n"); + return -1; + } + memcpy(&dsk_start, &dp[i].dp_start, 4); if (drvread(sec, dsk_start + LABELSECTOR, 1)) return -1; d = (void *)(sec + LABELOFFSET); + if (d->d_magic != DISKMAGIC || d->d_magic2 != DISKMAGIC) { + printf("Invalid %s\r\n", "label"); + return -1; + } + if (!d->d_partitions[0].p_size) { + printf("Invalid %s\r\n", "partition"); + return -1; + } dsk_start += d->d_partitions[0].p_offset; dsk_start -= d->d_partitions[RAW_PART].p_offset; + dsk_meta++; } return drvread(buf, dsk_start + lba, nblk); } From owner-p4-projects@FreeBSD.ORG Tue Aug 22 00:10:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 16F7116A4DF; Tue, 22 Aug 2006 00:10:32 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CE30416A4DA for ; Tue, 22 Aug 2006 00:10:31 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9CBC143D45 for ; Tue, 22 Aug 2006 00:10:31 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7M0AVKG063590 for ; Tue, 22 Aug 2006 00:10:31 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7M0AVde063586 for perforce@freebsd.org; Tue, 22 Aug 2006 00:10:31 GMT (envelope-from imp@freebsd.org) Date: Tue, 22 Aug 2006 00:10:31 GMT Message-Id: <200608220010.k7M0AVde063586@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104741 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 00:10:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=104741 Change 104741 by imp@imp_lighthouse on 2006/08/22 00:09:39 kill some debugging Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/sd-card.c#6 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/libat91/sd-card.c#6 (text+ko) ==== @@ -47,7 +47,7 @@ #include "lib.h" #include "sd-card.h" -#define IMP_DEBUG 1 +//#define IMP_DEBUG 1 #define AT91C_MCI_TIMEOUT 1000000 /* For AT91F_MCIDeviceWaitReady */ #define BUFFER_SIZE_MCI_DEVICE 512 @@ -180,7 +180,6 @@ int sizeToRead; unsigned int *walker; - printf("sector length is %d\r\n", sectorLength); #if IMP_DEBUG printf("Reading 0x%x bytes into ARM Addr 0x%x from card offset 0x%x\r\n", length, dest, source); From owner-p4-projects@FreeBSD.ORG Tue Aug 22 00:13:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4541B16A4E6; Tue, 22 Aug 2006 00:13:36 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 20DAB16A4EC for ; Tue, 22 Aug 2006 00:13:36 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DF73843D49 for ; Tue, 22 Aug 2006 00:13:35 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7M0DZBB063763 for ; Tue, 22 Aug 2006 00:13:35 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7M0DZbi063760 for perforce@freebsd.org; Tue, 22 Aug 2006 00:13:35 GMT (envelope-from imp@freebsd.org) Date: Tue, 22 Aug 2006 00:13:35 GMT Message-Id: <200608220013.k7M0DZbi063760@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104742 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 00:13:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=104742 Change 104742 by imp@imp_lighthouse on 2006/08/22 00:13:06 DOSPARTOFF is 446. This is 2 % 4, which means that attempts to access uint32_t elements will fail with an alignment trap. Cope by using memcpy and add a comment to this effect. Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#9 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#9 (text+ko) ==== @@ -342,6 +342,9 @@ printf("No BSD partition found\r\n"); return -1; } + // Although dp_start is aligned within the disk partition structure, + // DOSPARTOFF is 446, which is only word (2) aligned, not longword (4) + // aligned. Cope by using memcpy to fetch the start of this partition. memcpy(&dsk_start, &dp[i].dp_start, 4); if (drvread(sec, dsk_start + LABELSECTOR, 1)) return -1; From owner-p4-projects@FreeBSD.ORG Tue Aug 22 01:33:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 26F3916A4E6; Tue, 22 Aug 2006 01:33:15 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F251A16A4DA for ; Tue, 22 Aug 2006 01:33:14 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AB58043D46 for ; Tue, 22 Aug 2006 01:33:14 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7M1XECs076314 for ; Tue, 22 Aug 2006 01:33:14 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7M1XEMo076305 for perforce@freebsd.org; Tue, 22 Aug 2006 01:33:14 GMT (envelope-from imp@freebsd.org) Date: Tue, 22 Aug 2006 01:33:14 GMT Message-Id: <200608220133.k7M1XEMo076305@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104744 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 01:33:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=104744 Change 104744 by imp@imp_paco-paco on 2006/08/22 01:32:47 PACO Affected files ... .. //depot/projects/arm/src/sys/amd64/conf/PACO#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Aug 22 10:59:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5936616A4E0; Tue, 22 Aug 2006 10:59:36 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 332F716A4E6 for ; Tue, 22 Aug 2006 10:59:36 +0000 (UTC) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F084A43D5D for ; Tue, 22 Aug 2006 10:59:33 +0000 (GMT) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7MAxXh6034570 for ; Tue, 22 Aug 2006 10:59:33 GMT (envelope-from dongmei@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7MAxXpQ034567 for perforce@freebsd.org; Tue, 22 Aug 2006 10:59:33 GMT (envelope-from dongmei@FreeBSD.org) Date: Tue, 22 Aug 2006 10:59:33 GMT Message-Id: <200608221059.k7MAxXpQ034567@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to dongmei@FreeBSD.org using -f From: dongmei To: Perforce Change Reviews Cc: Subject: PERFORCE change 104765 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 10:59:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=104765 Change 104765 by dongmei@soc-dongmei-sebsd on 2006/08/22 10:58:37 Correct a part of booting error, as the swapon, fsck and hostname. Affected files ... .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/Makefile#3 edit .. //depot/projects/soc2006/dongmei_sebsd/lib/libsefs/Makefile#1 add Differences ... ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/Makefile#3 (text+ko) ==== @@ -26,7 +26,6 @@ # Include the local build.conf if it exists, otherwise # include the configuration of the root directory. include build.conf - ifdef LOCAL_ROOT -include $(LOCAL_ROOT)/build.conf endif @@ -71,7 +70,14 @@ FLASKDIR := $(POLDIR)/flask SECCLASS := $(FLASKDIR)/security_classes ISIDS := $(FLASKDIR)/initial_sids -AVS := $(FLASKDIR)/access_vectors +ifeq ($(DISTRO),sebsd) + AVS := $(FLASKDIR)/access_vectors.sebsd + SECCLASS := $(FLASKDIR)/security_classes.sebsd +else + AVS := $(FLASKDIR)/access_vectors + SECCLASS := $(FLASKDIR)/security_classes +endif + # local source layout ifdef LOCAL_ROOT @@ -409,8 +415,12 @@ # # Appconfig files # +APPCONF := config/appconfig-$(TYPE) + install-appconfig: $(APPFILES) - +test1: + echo $(APPCONF) + echo $(APPDIR) $(INSTALLDIR)/booleans: $(BOOLEANS) @mkdir -p $(TMPDIR) @mkdir -p $(INSTALLDIR) @@ -557,6 +567,11 @@ fi $(verbose) $(SETFILES) -F $(FCPATH) $(FILESYSTEMS) +test: + echo $(APPCONF) + echo $(APPDIR) + echo $(CONTEXTPATH) + echo $(M4PARAM) ######################################## # # Clean everything @@ -569,6 +584,7 @@ rm -f $(BOOLEANS) rm -fR $(HTMLDIR) rm -f $(TAGS) + # don't remove these files if we're given a local root ifndef LOCAL_ROOT rm -f $(FCSORT) @@ -583,7 +599,6 @@ rm -f $(GENERATED_FC) endif endif - .PHONY: install-src install-appconfig generate xml conf html bare tags .SUFFIXES: .SUFFIXES: .c From owner-p4-projects@FreeBSD.ORG Tue Aug 22 11:53:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 654E216A4DF; Tue, 22 Aug 2006 11:53:47 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2A84216A4DA for ; Tue, 22 Aug 2006 11:53:47 +0000 (UTC) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5EE6C43D46 for ; Tue, 22 Aug 2006 11:53:46 +0000 (GMT) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7MBrk5V043804 for ; Tue, 22 Aug 2006 11:53:46 GMT (envelope-from dongmei@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7MBrh19043801 for perforce@freebsd.org; Tue, 22 Aug 2006 11:53:43 GMT (envelope-from dongmei@FreeBSD.org) Date: Tue, 22 Aug 2006 11:53:43 GMT Message-Id: <200608221153.k7MBrh19043801@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to dongmei@FreeBSD.org using -f From: dongmei To: Perforce Change Reviews Cc: Subject: PERFORCE change 104768 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 11:53:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=104768 Change 104768 by dongmei@soc-dongmei-sebsd on 2006/08/22 11:53:00 Correct a part of booting error, as the error about swapon, fsck and hosstname. In addition, make the filesystem types that cannot support persistent label mapping such as devfs labeled correctly. Affected files ... .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corecommands.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corecommands.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corecommands.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.if.in#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.if.m4#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.te.in#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.te.m4#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/devices.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/devices.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/devices.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/domain.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/domain.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/domain.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/files.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/files.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/files.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/filesystem.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/filesystem.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/filesystem.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/kernel.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/kernel.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/kernel.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mcs.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mcs.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mcs.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/metadata.xml#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mls.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mls.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mls.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/selinux.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/selinux.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/selinux.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/storage.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/storage.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/storage.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/terminal.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/terminal.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/terminal.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/authlogin.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/authlogin.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/authlogin.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/clock.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/clock.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/clock.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/daemontools.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/daemontools.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/daemontools.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/fstools.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/fstools.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/fstools.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/getty.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/getty.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/getty.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hostname.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hostname.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hostname.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hotplug.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hotplug.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hotplug.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/init.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/init.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/init.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/ipsec.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/ipsec.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/ipsec.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/iptables.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/iptables.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/iptables.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/libraries.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/libraries.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/libraries.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/locallogin.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/locallogin.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/locallogin.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/logging.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/logging.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/logging.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/lvm.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/lvm.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/lvm.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/metadata.xml#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/miscfiles.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/miscfiles.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/miscfiles.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/modutils.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/modutils.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/modutils.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/mount.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/mount.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/mount.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/pcmcia.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/pcmcia.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/pcmcia.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/raid.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/raid.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/raid.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/selinuxutil.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/selinuxutil.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/selinuxutil.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/sysnetwork.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/sysnetwork.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/sysnetwork.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/udev.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/udev.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/udev.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/unconfined.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/unconfined.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/unconfined.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/userdomain.fc#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/userdomain.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/userdomain.te#2 edit Differences ... ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corecommands.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corecommands.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corecommands.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.if.in#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.if.m4#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.te#2 (text+ko) ==== @@ -47,6 +47,7 @@ type ppp_device_t; dev_node(ppp_device_t) +genfscon devfs /ppp gen_context(system_u:object_r:ppp_device_t,s0) # # tun_tap_device_t is the type of /dev/net/tun/* and /dev/net/tap/* ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.te.in#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/corenetwork.te.m4#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/devices.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/devices.if#2 (text+ko) ==== @@ -2253,6 +2253,21 @@ allow $1 sysfs_t:dir search; ') +############################################################ +## +## Get the attributes of devfs +## +## +## +## The type of the process performing this action +## +## +# +interface(`dev_getattr_devfs',` + # TODO + allow $1 device_t:filesystem getattr; +') + ######################################## ## @@ -2271,7 +2286,24 @@ dontaudit $1 sysfs_t:dir search; ') +############################################################ +## +## Search the devfs directories +## +## +## +## The type of the process performing this action +## +## +# +interface(`dev_search_devfs',` + gen_require(` + type device_t; + ') + allow $1 device_t:dir search; + ') + ######################################## ## ## List the contents of the sysfs directories. @@ -2308,6 +2340,23 @@ allow $1 sysfs_t:dir r_dir_perms; allow $1 sysfs_t:{ file lnk_file } r_file_perms; ') +######################################## +## +## Allow caller to read /dev +## +## +## +## The process type reading hardware state information. +## +## +# +interface(`dev_read_chr_file_devfs',` + gen_require(` + type device_t; + ') + + allow $1 device_t:chr_file r_file_perms; +') ######################################## ## ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/devices.te#2 (text+ko) ==== @@ -158,7 +158,9 @@ fs_noxattr_type(usbfs_t) genfscon usbfs / gen_context(system_u:object_r:usbfs_t,s0) genfscon usbdevfs / gen_context(system_u:object_r:usbfs_t,s0) - +#lll begin +genfscon usbdevfs /0 -- gen_context(system_u:object_r:usbfs_t,s0) +#lll end # # usb_device_t is the type for /dev/bus/usb/[0-9]+/[0-9]+ # @@ -167,7 +169,23 @@ # SEBSD still uses devfs so we need to genfscon the usb entries genfscon devfs /usb gen_context(system_u:object_r:usb_device_t,s0) +#lll begin +genfscon devfs / gen_context(system_u:object_r:device_t,s0) +genfscon devfs /acd -c gen_context(system_u:object_r:fixed_disk_device_t,s0) +genfscon devfs /fd -c gen_context(system_u:object_r:fixed_disk_device_t,s0) +genfscon devfs /initctl gen_context(system_u:object_r:initctl_t,s0) +genfscon devfs /log gen_context(system_u:object_r:devlog_t,s0) +genfscon devfs /misc/psaux gen_context(system_u:object_r:mouse_device_t,s0) +genfscon devfs /input/mouse gen_context(system_u:object_r:mouse_device_t,s0) +genfscon devfs /mse gen_context(system_u:object_r:mouse_device_t,s0) +genfscon devfs /psm gen_context(system_u:object_r:mouse_device_t,s0) +genfscon devfs /acpi gen_context(system_u:object_r:mouse_device_t,s0) +genfscon devfs /sound -c gen_context(system_u:object_r:sound_device_t,s0) +#genfscon devfs /usb gen_context(system_u:object_r:usbdevfs_device_t,s0) +#genfscon devfs /bpf -c gen_context(system_u:object_r:bpf_device_t,s0) +#genfscon devfs /klog gen_context(system_u:object_r:klog_device_t,s0) +#lll end type v4l_device_t; dev_node(v4l_device_t) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/domain.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/domain.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/domain.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/files.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/files.if#2 (text+ko) ==== @@ -2773,7 +2773,24 @@ allow $1 usr_t:dir search; allow $1 usr_t:file getattr; ') +######################################## +## +## Get the attributes of files in /etc. +## +## +## +## Domain allowed access. +## +## +# +interface(`files_getattr_etc_files',` + gen_require(` + type etc_t; + ') + allow $1 etc_t:file getattr; +') + ######################################## # # files_read_usr_files(domain) @@ -3016,6 +3033,25 @@ dontaudit $1 var_t:dir write; ') +############################################################ +## +## Search the contents of / +## +## +## +## Domain allowed access. +## +## +# +interface(`files_search_root',` + + gen_require(` + type root_t; + ') + + allow $1 root_t:dir search_dir_perms; +') + ######################################## ## @@ -3215,7 +3251,24 @@ allow $1 { var_t var_lib_t }:dir search_dir_perms; ') +######################################## +## +## Search the /var/run directory. +## +## +## +## Domain allowed access. +## +## +# +interface(`files_search_var_run',` + gen_require(` + type var_t, var_run_t; + ') + allow $1 { var_t var_run_t }:dir search_dir_perms; +') + ######################################## ## ## List the contents of the /var/lib directory. @@ -3283,6 +3336,24 @@ allow $1 { var_t var_lib_t }:dir search_dir_perms; allow $1 var_lib_t:file r_file_perms; ') +######################################## +## +## Read generic files in /var/run. +## +## +## +## Domain allowed access. +## +## +# +interface(`files_read_var_run_files',` + gen_require(` + type var_t, var_run_t; + ') + + allow $1 { var_t var_run_t }:dir search_dir_perms; + allow $1 var_run_t:file r_file_perms; +') ######################################## ## ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/files.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/filesystem.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/filesystem.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/filesystem.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/kernel.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/kernel.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/kernel.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mcs.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mcs.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mcs.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/metadata.xml#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mls.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mls.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/mls.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/selinux.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/selinux.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/selinux.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/storage.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/storage.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/storage.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/terminal.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/terminal.if#2 (text+ko) ==== @@ -532,6 +532,23 @@ allow $1 devpts_t:dir r_dir_perms; dontaudit $1 ptynode:chr_file getattr; ') +############################################################ +## +## Get the attributes of console device +## +## +## +## Domain allowed access +## +## +# +interface(`term_getattr_console',` + gen_require(` + type console_device_t; + ') + allow $1 console_device_t:chr_file getattr; +') + ######################################## ## ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/terminal.te#2 (text+ko) ==== @@ -14,6 +14,25 @@ # bsdpty_device_t is the type of /dev/[tp]ty[abcdepqrstuvwxyz][0-9a-f] type bsdpty_device_t; dev_node(bsdpty_device_t) +genfscon devfs /null gen_context(system_u:object_r:null_device_t,s0) +genfscon devfs /zero gen_context(system_u:object_r:zero_device_t,s0) +genfscon devfs /console gen_context(system_u:object_r:console_device_t,s0) +genfscon devfs /kmem gen_context(system_u:object_r:memory_device_t,s0) +genfscon devfs /mem gen_context(system_u:object_r:memory_device_t,s0) +genfscon devfs /random gen_context(system_u:object_r:random_device_t,s0) +genfscon devfs /urandom gen_context(system_u:object_r:random_device_t,s0) +genfscon devfs /tty gen_context(system_u:object_r:devtty_t,s0) +genfscon devfs /ctty gen_context(system_u:object_r:devtty_t,s0) +genfscon devfs /ttyv gen_context(system_u:object_r:tty_device_t,s0) +genfscon devfs /pty gen_context(system_u:object_r:devpts_t,s0) +genfscon devfs /ttyp gen_context(system_u:object_r:devpts_t,s0) +genfscon devfs /ttyq gen_context(system_u:object_r:devpts_t,s0) +genfscon devfs /ttyr gen_context(system_u:object_r:devpts_t,s0) +genfscon devfs /ttys gen_context(system_u:object_r:devpts_t,s0) +genfscon devfs /ttyP gen_context(system_u:object_r:devpts_t,s0) +genfscon devfs /ttyQ gen_context(system_u:object_r:devpts_t,s0) +genfscon devfs /ttyR gen_context(system_u:object_r:devpts_t,s0) +genfscon devfs /ttyS gen_context(system_u:object_r:devpts_t,s0) # # console_device_t is the type of /dev/console. ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/authlogin.fc#2 (text+ko) ==== @@ -1,5 +1,5 @@ -/bin/login -- gen_context(system_u:object_r:login_exec_t,s0) +/usr/bin/login -- gen_context(system_u:object_r:login_exec_t,s0) /etc/\.pwd\.lock -- gen_context(system_u:object_r:shadow_t,s0) /etc/group\.lock -- gen_context(system_u:object_r:shadow_t,s0) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/authlogin.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/authlogin.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/clock.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/clock.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/clock.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/daemontools.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/daemontools.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/daemontools.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/fstools.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/fstools.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/fstools.te#2 (text+ko) ==== @@ -73,7 +73,30 @@ dev_getattr_usbfs_dirs(fsadm_t) # Access to /dev/mapper/control dev_rw_lvm_control(fsadm_t) +#lll begin for swapon +#Access /dev +dev_search_devfs(fsadm_t) +#Access /dev/console +term_getattr_console(fsadm_t) +#?for the avc error denied:fsadm_t init_t:fd {use} +init_use_fds(fsadm_t) +storage_getattr_fixed_disk_dev(fsadm_t) +#for fsck +#for fsck search /sbin directory +corecmd_search_sbin(fsadm_t) +#for fsck_ufs,fsck_ffs,fsck_4.2bsd command +can_exec(fsadm_t,fsadm_exec_t) +# +corecmd_search_bin(fsadm_t) +#for /libexec/ld-elf.so.1 +libs_exec_ld_so(fsadm_t) +#for fsck_ufs +dev_getattr_devfs(fsadm_t) + + + +#lll end fs_search_auto_mountpoints(fsadm_t) fs_getattr_xattr_fs(fsadm_t) fs_rw_ramfs_pipes(fsadm_t) @@ -167,3 +190,9 @@ optional_policy(`nis',` nis_use_ypbind(fsadm_t) ') +#lll begin +storage_raw_read_fixed_disk(fsadm_t) + +storage_raw_write_fixed_disk(fsadm_t) + + ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/getty.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/getty.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/getty.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hostname.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hostname.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hostname.te#2 (text+ko) ==== @@ -56,6 +56,27 @@ sysnet_read_config(hostname_t) sysnet_dns_name_resolve(hostname_t) +#begin lll +allow hostname_t hostname_exec_t:file entrypoint; +allow hostname_t hostname_t:fd create; +allow hostname_t hostname_t:capability sys_resource; +allow hostname_t hostname_t:fd use; + +files_search_root(hostname_t) +files_search_etc(hostname_t) +files_read_etc_files(hostname_t) +files_getattr_etc_files(hostname_t) +files_search_var(hostname_t) +files_search_var_run(hostname_t) +files_read_var_run_files(hostname_t) +libs_search_lib(hostname_t) +libs_read_shlib_files(hostname_t) +files_getattr_shlib_files(hostname_t) +libs_exec_shlib_files(hostname_t) +userdom_rw_sysadm_pipes(hostname_t) +userdom_getattr_sysadm_pipes(hostname_t) +dev_read_chr_file_devfs(hostname_t) + ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hotplug.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hotplug.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hotplug.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/init.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/init.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/init.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/ipsec.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/ipsec.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/ipsec.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/iptables.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/iptables.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/iptables.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/libraries.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/libraries.if#2 (text+ko) ==== @@ -220,7 +220,25 @@ allow $1 lib_t:dir r_dir_perms; allow $1 lib_t:{ file lnk_file } r_file_perms; ') +######################################## +## +## Read files in the library directories, such +## as static libraries. +## +## +## +## The type of the process performing this action. +## +## +# +interface(`libs_read_shlib_files',` + gen_require(` + type shlib_t; + ') + allow $1 shlib_t:{ file lnk_file } r_file_perms; +') + ######################################## ## ## Execute library scripts in the caller domain. @@ -241,6 +259,40 @@ allow $1 lib_t:lnk_file r_file_perms; can_exec($1,lib_t) ') +######################################## +## +## Execute library scripts in the caller domain. +## +## +## +## The type of the process performing this action. +## +## +# +interface(`libs_exec_shlib_files',` + gen_require(` + type shlib_t; + ') + + can_exec($1,shlib_t) +') +######################################## +## +## Get the attributes of files in /lib/*. +## +## +## +## Domain allowed access. +## +## +# +interface(`files_getattr_shlib_files',` + gen_require(` + type shlib_t; + ') + + allow $1 shlib_t:file getattr; +') ######################################## ## ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/libraries.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/locallogin.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/locallogin.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/locallogin.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/logging.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/logging.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/logging.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/lvm.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/lvm.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/lvm.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/metadata.xml#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/miscfiles.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/miscfiles.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/miscfiles.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/modutils.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/modutils.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/modutils.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/mount.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/mount.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/mount.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/pcmcia.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/pcmcia.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/pcmcia.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/raid.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/raid.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/raid.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/selinuxutil.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/selinuxutil.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/selinuxutil.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/sysnetwork.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/sysnetwork.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/sysnetwork.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/udev.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/udev.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/udev.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/unconfined.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/unconfined.if#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/unconfined.te#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/userdomain.fc#2 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/userdomain.if#2 (text+ko) ==== @@ -974,6 +974,17 @@ allow $1 removable_t:filesystem getattr; ') dnl endif TODO +files_search_mnt($1_t) +corecmd_exec_sbin($1_t) +corecmd_exec_shell($1_t) +files_search_boot($1_t) +files_exec_etc_files($1_t) +files_exec_usr_files($1_t) +files_manage_var_dirs($1_t) +logging_search_logs($1_t) + + + ') ######################################## @@ -3411,6 +3422,23 @@ allow $1 sysadm_home_dir_t:dir getattr; ') +######################################## +## +## Get the attributes of the sysadm pipes +## +## +## +## Domain allowed access. +## +## +# +interface(`userdom_getattr_sysadm_pipes',` + gen_require(` + type sysadm_t; + ') + + allow $1 sysadm_t:fifo_file getattr; +') ######################################## ## @@ -4432,3 +4460,5 @@ allow $1 user_home_dir_t:dir create_dir_perms; files_home_filetrans($1,user_home_dir_t,dir) ') + + ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/userdomain.te#2 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Tue Aug 22 12:42:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 85CFB16A4E2; Tue, 22 Aug 2006 12:42:51 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 478C616A4DF for ; Tue, 22 Aug 2006 12:42:51 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9504A43D55 for ; Tue, 22 Aug 2006 12:42:48 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7MCgmHJ047987 for ; Tue, 22 Aug 2006 12:42:48 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7MCgmWk047984 for perforce@freebsd.org; Tue, 22 Aug 2006 12:42:48 GMT (envelope-from piso@freebsd.org) Date: Tue, 22 Aug 2006 12:42:48 GMT Message-Id: <200608221242.k7MCgmWk047984@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104770 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 12:42:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=104770 Change 104770 by piso@piso_newluxor on 2006/08/22 12:42:25 Restore the MPSAFE flag i mistakenly deleted in a previous commit. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/re/if_re.c#9 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/re/if_re.c#9 (text+ko) ==== @@ -1286,7 +1286,7 @@ #endif /* Hook interrupt last to avoid having to lock softc */ - error = bus_setup_intr(dev, sc->rl_irq, INTR_TYPE_NET, + error = bus_setup_intr(dev, sc->rl_irq, INTR_TYPE_NET | INTR_MPSAFE, re_filter, re_int_task, sc, &sc->rl_intrhand); if (error) { device_printf(dev, "couldn't set up irq\n"); From owner-p4-projects@FreeBSD.ORG Tue Aug 22 14:04:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8178416A4E5; Tue, 22 Aug 2006 14:04:34 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 430F316A4E0 for ; Tue, 22 Aug 2006 14:04:34 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D4FB543D55 for ; Tue, 22 Aug 2006 14:04:33 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7ME4Xth065701 for ; Tue, 22 Aug 2006 14:04:33 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7ME4XRf065698 for perforce@freebsd.org; Tue, 22 Aug 2006 14:04:33 GMT (envelope-from piso@freebsd.org) Date: Tue, 22 Aug 2006 14:04:33 GMT Message-Id: <200608221404.k7ME4XRf065698@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104774 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 14:04:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=104774 Change 104774 by piso@piso_newluxor on 2006/08/22 14:04:27 Update the boot time messages to reflect the new interrupt models. Affected files ... .. //depot/projects/soc2006/intr_filter/kern/subr_bus.c#8 edit Differences ... ==== //depot/projects/soc2006/intr_filter/kern/subr_bus.c#8 (text+ko) ==== @@ -3447,12 +3447,17 @@ error = BUS_SETUP_INTR(dev->parent, dev, r, flags, filter, handler, arg, cookiep); if (error == 0) { - if (!IS_FAST(filter, handler) && !(flags & INTR_MPSAFE)) + if (handler != NULL && !(flags & INTR_MPSAFE)) device_printf(dev, "[GIANT-LOCKED]\n"); if (bootverbose && (flags & INTR_MPSAFE)) device_printf(dev, "[MPSAFE]\n"); - if (IS_FAST(filter, handler)) - device_printf(dev, "[FAST]\n"); + if (filter != NULL) { + if (handler == NULL) + device_printf(dev, "[FILTER]\n"); + else + device_printf(dev, "[FILTER+ITHREAD]\n"); + } else + device_printf(dev, "[ITHREAD]\n"); } } else error = EINVAL; From owner-p4-projects@FreeBSD.ORG Tue Aug 22 15:29:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 00BD116A4E1; Tue, 22 Aug 2006 15:29:21 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D130B16A4DD for ; Tue, 22 Aug 2006 15:29:20 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9DFA543D49 for ; Tue, 22 Aug 2006 15:29:20 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7MFTKvP077358 for ; Tue, 22 Aug 2006 15:29:20 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7MFTKEO077355 for perforce@freebsd.org; Tue, 22 Aug 2006 15:29:20 GMT (envelope-from piso@freebsd.org) Date: Tue, 22 Aug 2006 15:29:20 GMT Message-Id: <200608221529.k7MFTKEO077355@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104778 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 15:29:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=104778 Change 104778 by piso@piso_newluxor on 2006/08/22 15:28:51 Start to retire IS_FAST as per jhb request. Affected files ... .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#16 edit .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#9 edit Differences ... ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#16 (text+ko) ==== @@ -375,7 +375,7 @@ intr_event_update(ie); /* Create a thread if we need one. */ - while (ie->ie_thread == NULL && !IS_FAST(filter, handler)) { + while (ie->ie_thread == NULL && handler != NULL) { if (ie->ie_flags & IE_ADDING_THREAD) msleep(ie, &ie->ie_lock, 0, "ithread", 0); else { @@ -473,7 +473,7 @@ */ dead = 1; TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { - if !IS_FAST(ih->ih_filter, ih->ih_handler) { + if (handler != NULL) { dead = 0; break; } ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#9 (text+ko) ==== @@ -333,7 +333,7 @@ * instead from intr_execute_handlers: with interrupt filters in * place, they won't work, to be fixed. */ - intr_setup(IS_FAST(filter, handler) ? PIL_FAST : PIL_ITHREAD, intr_fast, vec, + intr_setup((handler == NULL) ? PIL_FAST : PIL_ITHREAD, intr_fast, vec, intr_execute_handlers, iv); intr_stray_count[vec] = 0; From owner-p4-projects@FreeBSD.ORG Tue Aug 22 18:49:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 35ACE16A4DF; Tue, 22 Aug 2006 18:49:39 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DEE5E16A4DD for ; Tue, 22 Aug 2006 18:49:38 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7CF2643D46 for ; Tue, 22 Aug 2006 18:49:38 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7MIncvQ013571 for ; Tue, 22 Aug 2006 18:49:38 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7MInY93013568 for perforce@freebsd.org; Tue, 22 Aug 2006 18:49:34 GMT (envelope-from piso@freebsd.org) Date: Tue, 22 Aug 2006 18:49:34 GMT Message-Id: <200608221849.k7MInY93013568@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104791 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 18:49:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=104791 Change 104791 by piso@piso_newluxor on 2006/08/22 18:48:53 IFC Affected files ... .. //depot/projects/soc2005/libalias/Makefile.inc1#3 integrate .. //depot/projects/soc2005/libalias/ObsoleteFiles.inc#4 integrate .. //depot/projects/soc2005/libalias/UPDATING#4 integrate .. //depot/projects/soc2005/libalias/bin/date/netdate.c#2 integrate .. //depot/projects/soc2005/libalias/bin/df/df.c#2 integrate .. //depot/projects/soc2005/libalias/bin/ed/main.c#2 integrate .. //depot/projects/soc2005/libalias/bin/ps/ps.1#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/BSD/Makefile#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/HISTORY#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/Makefile#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/bpf_filter.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ip_fil.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ipf.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/iplang/iplang_y.y#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ipmon.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ipsd/sbpf.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ipsend/ipsend.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ipsend/iptests.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ipsend/lsock.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ipsend/resend.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ipsend/sbpf.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ipsend/sock.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/ipt.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/Makefile#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/addicmp.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/addkeep.c#2 delete .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/facpri.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/getport.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/icmpcode.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/ipft_tx.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/make_range.c#2 delete .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/optprint.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/printfr.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/lib/printlog.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/man/ipmon.8#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/radix.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/samples/proxy.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/Makefile#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/f20#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/i1#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/i10#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/i11#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/i18#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/i5#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/i8#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/i9#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/in2#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/in5#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/ni19#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/ni20#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/expected/ni21#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/input/f2#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/input/f20#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/input/ni19#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/input/ni20#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/input/ni21#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/f20#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/i1#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/i10#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/i11#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/i15#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/i17#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/i18#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/i5#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/i8#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/i9#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/in2#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/in5#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/ni19.ipf#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/ni19.nat#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/ni20.ipf#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/ni20.nat#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/ni21.ipf#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/regress/ni21.nat#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/test/test.format#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/todo#1 branch .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/ipf.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/ipf_y.y#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/ipfcomp.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/ipfs.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/ipfstat.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/ipftest.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/ipmon.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/ipnat_y.y#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/ipsyncm.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/ipsyncs.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/ipfilter/tools/lexer.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/LICENSE#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/Makefile.aut#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/Makefile.in#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/Makefile.wnb#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/NEWS#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/README#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/brac.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/ch.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/charset.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/charset.h#1 branch .. //depot/projects/soc2005/libalias/contrib/less/cmd.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/cmdbuf.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/command.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/configure#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/configure.ac#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/decode.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/defines.ds#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/defines.h.in#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/defines.o2#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/defines.o9#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/defines.wn#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/edit.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/filename.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/forwback.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/funcs.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/ifile.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/input.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/jump.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/less.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/less.man#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/less.nro#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/lessecho.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/lessecho.man#1 branch .. //depot/projects/soc2005/libalias/contrib/less/lessecho.nro#1 branch .. //depot/projects/soc2005/libalias/contrib/less/lesskey.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/lesskey.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/lesskey.man#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/lesskey.nro#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/lglob.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/line.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/linenum.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/lsystem.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/main.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/mark.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/mkhelp.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/optfunc.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/option.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/option.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/opttbl.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/os.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/output.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/pckeys.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/position.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/position.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/prompt.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/screen.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/scrsize.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/search.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/signal.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/tags.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/ttyin.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/less/version.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/pnpinfo/pnpinfo.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/sendmail/FREEBSD-upgrade#2 integrate .. //depot/projects/soc2005/libalias/contrib/sendmail/RELEASE_NOTES#2 integrate .. //depot/projects/soc2005/libalias/contrib/sendmail/cf/cf/submit.cf#2 integrate .. //depot/projects/soc2005/libalias/contrib/sendmail/cf/m4/version.m4#2 integrate .. //depot/projects/soc2005/libalias/contrib/sendmail/contrib/cidrexpand#2 integrate .. //depot/projects/soc2005/libalias/contrib/sendmail/src/main.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/sendmail/src/queue.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/sendmail/src/srvrsmtp.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/sendmail/src/version.c#2 integrate .. //depot/projects/soc2005/libalias/etc/defaults/rc.conf#4 integrate .. //depot/projects/soc2005/libalias/etc/network.subr#2 integrate .. //depot/projects/soc2005/libalias/etc/pccard_ether#2 integrate .. //depot/projects/soc2005/libalias/etc/rc.d/Makefile#3 integrate .. //depot/projects/soc2005/libalias/etc/rc.d/dhclient#3 integrate .. //depot/projects/soc2005/libalias/etc/rc.d/ramdisk#2 delete .. //depot/projects/soc2005/libalias/etc/rc.d/ramdisk-own#2 delete .. //depot/projects/soc2005/libalias/etc/rc.d/sshd#2 integrate .. //depot/projects/soc2005/libalias/etc/rc.d/ypxfrd#2 integrate .. //depot/projects/soc2005/libalias/etc/rc.initdiskless#2 integrate .. //depot/projects/soc2005/libalias/etc/rc.subr#3 integrate .. //depot/projects/soc2005/libalias/etc/sendmail/freebsd.mc#2 integrate .. //depot/projects/soc2005/libalias/etc/sendmail/freebsd.submit.mc#2 integrate .. //depot/projects/soc2005/libalias/gnu/lib/libsupc++/Makefile#2 integrate .. //depot/projects/soc2005/libalias/gnu/usr.bin/Makefile#2 integrate .. //depot/projects/soc2005/libalias/lib/Makefile#3 integrate .. //depot/projects/soc2005/libalias/lib/csu/alpha/Makefile#2 delete .. //depot/projects/soc2005/libalias/lib/csu/alpha/crt1.c#2 delete .. //depot/projects/soc2005/libalias/lib/csu/alpha/crti.S#2 delete .. //depot/projects/soc2005/libalias/lib/csu/alpha/crtn.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/Makefile#2 integrate .. //depot/projects/soc2005/libalias/lib/libc/alpha/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/SYS.h#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/Symbol.map#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/_fpmath.h#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/arith.h#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/_ctx_start.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/_set_tp.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/_setjmp.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/divrem.m4#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/fabs.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/flt_rounds.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/fpgetmask.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/fpgetround.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/fpgetsticky.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/fpsetmask.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/fpsetround.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/infinity.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/makecontext.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/modf.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/rfork_thread.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/setjmp.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/signalcontext.c#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/gen/sigsetjmp.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/net/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/net/byte_swap_2.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/net/byte_swap_4.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/net/htonl.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/net/htons.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/net/ntohl.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/net/ntohs.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/stdlib/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/string/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/string/bcopy.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/string/bzero.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/string/ffs.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/string/memcpy.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/string/memmove.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/Ovfork.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/brk.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/cerror.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/exect.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/fork.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/pipe.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/ptrace.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/sbrk.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/setlogin.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/alpha/sys/sigreturn.S#2 delete .. //depot/projects/soc2005/libalias/lib/libc/arm/net/htonl.S#2 integrate .. //depot/projects/soc2005/libalias/lib/libc/arm/net/htons.S#2 integrate .. //depot/projects/soc2005/libalias/lib/libc/arm/net/ntohl.S#2 integrate .. //depot/projects/soc2005/libalias/lib/libc/arm/net/ntohs.S#2 integrate .. //depot/projects/soc2005/libalias/lib/libc/stdio/findfp.c#2 integrate .. //depot/projects/soc2005/libalias/lib/libc_r/Makefile#2 integrate .. //depot/projects/soc2005/libalias/lib/libc_r/arch/alpha/_atomic_lock.S#2 delete .. //depot/projects/soc2005/libalias/lib/libio/Makefile#2 delete .. //depot/projects/soc2005/libalias/lib/libio/alpha_sethae.c#2 delete .. //depot/projects/soc2005/libalias/lib/libio/bwx.c#2 delete .. //depot/projects/soc2005/libalias/lib/libio/io.c#2 delete .. //depot/projects/soc2005/libalias/lib/libio/io.h#2 delete .. //depot/projects/soc2005/libalias/lib/libio/swiz.c#2 delete .. //depot/projects/soc2005/libalias/lib/libpthread/Makefile#2 integrate .. //depot/projects/soc2005/libalias/lib/libpthread/arch/alpha/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/lib/libpthread/arch/alpha/alpha/context.S#2 delete .. //depot/projects/soc2005/libalias/lib/libpthread/arch/alpha/alpha/enter_uts.S#2 delete .. //depot/projects/soc2005/libalias/lib/libpthread/arch/alpha/alpha/pthread_md.c#2 delete .. //depot/projects/soc2005/libalias/lib/libpthread/arch/alpha/include/atomic_ops.h#2 delete .. //depot/projects/soc2005/libalias/lib/libpthread/arch/alpha/include/pthread_md.h#2 delete .. //depot/projects/soc2005/libalias/lib/libstand/Makefile#2 integrate .. //depot/projects/soc2005/libalias/lib/libstand/alpha/_setjmp.S#2 delete .. //depot/projects/soc2005/libalias/lib/libthr/Makefile#2 integrate .. //depot/projects/soc2005/libalias/lib/libthr/arch/alpha/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/lib/libthr/arch/alpha/alpha/pthread_md.c#2 delete .. //depot/projects/soc2005/libalias/lib/libthr/arch/alpha/include/pthread_md.h#2 delete .. //depot/projects/soc2005/libalias/lib/msun/alpha/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/lib/msun/alpha/Symbol.map#2 delete .. //depot/projects/soc2005/libalias/lib/msun/alpha/fenv.c#2 delete .. //depot/projects/soc2005/libalias/lib/msun/alpha/fenv.h#2 delete .. //depot/projects/soc2005/libalias/lib/msun/alpha/s_copysign.S#2 delete .. //depot/projects/soc2005/libalias/lib/msun/alpha/s_copysignf.S#2 delete .. //depot/projects/soc2005/libalias/libexec/rtld-elf/alpha/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/libexec/rtld-elf/alpha/ld.so.script#2 delete .. //depot/projects/soc2005/libalias/libexec/rtld-elf/alpha/reloc.c#2 delete .. //depot/projects/soc2005/libalias/libexec/rtld-elf/alpha/rtld_machdep.h#2 delete .. //depot/projects/soc2005/libalias/libexec/rtld-elf/alpha/rtld_start.S#2 delete .. //depot/projects/soc2005/libalias/release/Makefile#2 integrate .. //depot/projects/soc2005/libalias/release/alpha/boot_crunch.conf#2 delete .. //depot/projects/soc2005/libalias/release/alpha/mkisoimages.sh#2 delete .. //depot/projects/soc2005/libalias/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#4 integrate .. //depot/projects/soc2005/libalias/rescue/rescue/Makefile#2 integrate .. //depot/projects/soc2005/libalias/sbin/bsdlabel/Makefile#2 integrate .. //depot/projects/soc2005/libalias/sbin/camcontrol/camcontrol.8#2 integrate .. //depot/projects/soc2005/libalias/sbin/camcontrol/camcontrol.c#2 integrate .. //depot/projects/soc2005/libalias/sbin/dhclient/dhclient.8#2 integrate .. //depot/projects/soc2005/libalias/sbin/dhclient/dhclient.c#3 integrate .. //depot/projects/soc2005/libalias/sbin/dump/dump.8#2 integrate .. //depot/projects/soc2005/libalias/sbin/ggate/Makefile#2 integrate .. //depot/projects/soc2005/libalias/sbin/ipf/libipf/Makefile#2 integrate .. //depot/projects/soc2005/libalias/sbin/ipfw/ipfw.8#4 integrate .. //depot/projects/soc2005/libalias/sbin/ipfw/ipfw2.c#4 integrate .. //depot/projects/soc2005/libalias/sbin/ping/Makefile#2 integrate .. //depot/projects/soc2005/libalias/secure/lib/libcrypto/Makefile.inc#4 integrate .. //depot/projects/soc2005/libalias/secure/lib/libcrypto/opensslconf-alpha.h#2 delete .. //depot/projects/soc2005/libalias/share/man/man4/amdsmb.4#2 integrate .. //depot/projects/soc2005/libalias/share/man/man4/ixgb.4#2 integrate .. //depot/projects/soc2005/libalias/share/man/man4/nfsmb.4#2 integrate .. //depot/projects/soc2005/libalias/share/man/man4/uplcom.4#3 integrate .. //depot/projects/soc2005/libalias/share/man/man5/rc.conf.5#3 integrate .. //depot/projects/soc2005/libalias/share/man/man8/rc.subr.8#3 integrate .. //depot/projects/soc2005/libalias/share/man/man9/lock.9#2 integrate .. //depot/projects/soc2005/libalias/share/mk/bsd.cpu.mk#4 integrate .. //depot/projects/soc2005/libalias/share/mk/bsd.endian.mk#2 integrate .. //depot/projects/soc2005/libalias/sys/amd64/amd64/support.S#3 integrate .. //depot/projects/soc2005/libalias/sys/amd64/linux32/linux.h#3 integrate .. //depot/projects/soc2005/libalias/sys/amd64/linux32/linux32_machdep.c#3 integrate .. //depot/projects/soc2005/libalias/sys/amd64/linux32/linux32_sysvec.c#3 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/Makefile#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/boot0/Makefile#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/boot0iic/Makefile#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/boot0iic/doit.c#2 delete .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/boot0iic/main.c#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/boot0spi/Makefile#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/boot0spi/doit.c#2 delete .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/boot0spi/main.c#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/bootiic/loader_prompt.c#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/bootspi/Makefile#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/bootspi/arm_init.S#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/bootspi/arm_init.s#2 delete .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/bootspi/env_vars.c#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/bootspi/env_vars.h#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/bootspi/loader_prompt.c#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/bootspi/loader_prompt.h#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/bootspi/main.c#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/Makefile#3 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/delay.c#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/emac.c#3 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/emac.h#3 integrate .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/emac_init.c#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/lib_AT91RM9200.h#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/mci_device.c#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/mci_device.h#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/reset.c#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/sd-card.c#1 branch .. //depot/projects/soc2005/libalias/sys/boot/arm/at91/libat91/sd-card.h#1 branch .. //depot/projects/soc2005/libalias/sys/boot/common/help.common#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/common/loader.8#2 integrate .. //depot/projects/soc2005/libalias/sys/boot/ficl/arm/sysdep.c#1 branch .. //depot/projects/soc2005/libalias/sys/boot/ficl/arm/sysdep.h#1 branch .. //depot/projects/soc2005/libalias/sys/boot/forth/loader.conf#4 integrate .. //depot/projects/soc2005/libalias/sys/cam/scsi/scsi_all.c#2 integrate .. //depot/projects/soc2005/libalias/sys/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/soc2005/libalias/sys/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/soc2005/libalias/sys/compat/freebsd32/syscalls.master#4 integrate .. //depot/projects/soc2005/libalias/sys/compat/linux/linux_emul.c#2 integrate .. //depot/projects/soc2005/libalias/sys/compat/linux/linux_emul.h#2 integrate .. //depot/projects/soc2005/libalias/sys/compat/linux/linux_futex.c#2 integrate .. //depot/projects/soc2005/libalias/sys/compat/linux/linux_misc.c#4 integrate .. //depot/projects/soc2005/libalias/sys/compat/linux/linux_signal.c#3 integrate .. //depot/projects/soc2005/libalias/sys/compat/ndis/ntoskrnl_var.h#2 integrate .. //depot/projects/soc2005/libalias/sys/conf/NOTES#4 integrate .. //depot/projects/soc2005/libalias/sys/conf/files.pc98#3 integrate .. //depot/projects/soc2005/libalias/sys/conf/options#5 integrate .. //depot/projects/soc2005/libalias/sys/dev/arl/if_arlreg.h#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/ata/ata-chipset.c#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/ath/if_athvar.h#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/bge/if_bge.c#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/em/if_em.c#5 integrate .. //depot/projects/soc2005/libalias/sys/dev/iicbus/if_ic.c#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/iicbus/iicbb.c#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/ips/ips.h#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/isp/isp_ioctl.h#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/isp/isp_pci.c#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/usb/usb_port.h#2 integrate .. //depot/projects/soc2005/libalias/sys/fs/msdosfs/denode.h#2 integrate .. //depot/projects/soc2005/libalias/sys/geom/vinum/geom_vinum_raid5.h#2 integrate .. //depot/projects/soc2005/libalias/sys/i386/linux/linux.h#3 integrate .. //depot/projects/soc2005/libalias/sys/i386/linux/linux_machdep.c#3 integrate .. //depot/projects/soc2005/libalias/sys/i386/linux/linux_sysvec.c#3 integrate .. //depot/projects/soc2005/libalias/sys/kern/sys_process.c#2 integrate .. //depot/projects/soc2005/libalias/sys/kern/syscalls.master#5 integrate .. //depot/projects/soc2005/libalias/sys/kern/uipc_socket.c#4 integrate .. //depot/projects/soc2005/libalias/sys/modules/Makefile#6 integrate .. //depot/projects/soc2005/libalias/sys/net/if_bridge.c#6 integrate .. //depot/projects/soc2005/libalias/sys/netinet/ip_fastfwd.c#2 integrate .. //depot/projects/soc2005/libalias/sys/netinet/ip_fw.h#3 integrate .. //depot/projects/soc2005/libalias/sys/netinet/ip_fw2.c#5 integrate .. //depot/projects/soc2005/libalias/sys/netinet/ip_input.c#2 integrate .. //depot/projects/soc2005/libalias/sys/netinet/ip_output.c#3 integrate .. //depot/projects/soc2005/libalias/sys/netsmb/smb_crypt.c#2 integrate .. //depot/projects/soc2005/libalias/sys/netsmb/smb_iod.c#2 integrate .. //depot/projects/soc2005/libalias/sys/netsmb/smb_rq.c#2 integrate .. //depot/projects/soc2005/libalias/sys/netsmb/smb_rq.h#2 integrate .. //depot/projects/soc2005/libalias/sys/nfsclient/nfs_lock.c#2 integrate .. //depot/projects/soc2005/libalias/sys/pci/agp_amd64.c#2 integrate .. //depot/projects/soc2005/libalias/sys/pci/nfsmb.c#2 integrate .. //depot/projects/soc2005/libalias/sys/sys/sysctl.h#4 integrate .. //depot/projects/soc2005/libalias/sys/ufs/ffs/ffs_snapshot.c#2 integrate .. //depot/projects/soc2005/libalias/sys/ufs/ufs/ufs_vnops.c#2 integrate .. //depot/projects/soc2005/libalias/sys/vm/vm_object.c#4 integrate .. //depot/projects/soc2005/libalias/sys/vm/vm_page.c#4 integrate .. //depot/projects/soc2005/libalias/sys/vm/vm_pageq.c#2 integrate .. //depot/projects/soc2005/libalias/sys/vm/vm_zeroidle.c#2 integrate .. //depot/projects/soc2005/libalias/tools/regression/lib/msun/Makefile#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/Makefile#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/calendar/calendars/calendar.freebsd#3 integrate .. //depot/projects/soc2005/libalias/usr.bin/calendar/calendars/calendar.history#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/less/defines.h#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/lessecho/Makefile#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/locate/locate/locate.1#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/pkill/Makefile#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/uac/Makefile#2 delete .. //depot/projects/soc2005/libalias/usr.bin/uac/uac.1#2 delete .. //depot/projects/soc2005/libalias/usr.bin/uac/uac.c#2 delete .. //depot/projects/soc2005/libalias/usr.sbin/Makefile#4 integrate .. //depot/projects/soc2005/libalias/usr.sbin/arp/arp.8#2 integrate .. //depot/projects/soc2005/libalias/usr.sbin/crunch/crunchide/Makefile#2 integrate .. //depot/projects/soc2005/libalias/usr.sbin/newsyslog/newsyslog.c#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pnpinfo/Makefile#2 integrate .. //depot/projects/soc2005/libalias/usr.sbin/rpc.lockd/kern.c#2 integrate .. //depot/projects/soc2005/libalias/usr.sbin/sysinstall/devices.c#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/sysinstall/install.c#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/traceroute/Makefile#2 integrate .. //depot/projects/soc2005/libalias/usr.sbin/yppush/yppush_main.c#3 integrate Differences ... ==== //depot/projects/soc2005/libalias/Makefile.inc1#3 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.552 2006/08/09 11:03:06 netchild Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.553 2006/08/22 07:51:05 ru Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -926,9 +926,6 @@ .if ${MK_RESCUE} != "no" || defined(RELEASEDIR) _crunchide= usr.sbin/crunch/crunchide .endif -.if ${TARGET_ARCH} == "alpha" -_elf2exe= usr.sbin/elf2exe -.endif .if ${TARGET_ARCH} == "i386" && defined(RELEASEDIR) _kgzip= usr.sbin/kgzip .endif @@ -941,7 +938,6 @@ usr.bin/xlint/lint1 usr.bin/xlint/lint2 usr.bin/xlint/xlint \ ${_btxld} \ ${_crunchide} \ - ${_elf2exe} \ ${_kgzip} ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_tool}; \ ==== //depot/projects/soc2005/libalias/ObsoleteFiles.inc#4 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/ObsoleteFiles.inc,v 1.47 2006/08/14 18:20:36 netchild Exp $ +# $FreeBSD: src/ObsoleteFiles.inc,v 1.49 2006/08/22 11:12:09 flz Exp $ # # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and # directories (OLD_DIRS) which should get removed at an update. Recently @@ -14,6 +14,9 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20060822: ramdisk{,-own} have been replaced by mdconfig{,2} +OLD_FILES+=etc/rc.d/ramdisk +OLD_FILES+=etc/rc.d/ramdisk-own # 20060704: KAME compat file net_osdep.h removed OLD_FILES+=usr/include/net/net_osdep.h # 20060517: pcvt removed @@ -334,7 +337,7 @@ OLD_FILES+=usr/share/man/man1/sgsc.1.gz OLD_FILES+=usr/share/man/man4/i386/stl.4.gz OLD_FILES+=usr/share/man/man8/raidctl.8.gz -.if ${TARGET_ARCH} != "alpha" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "sparc64" # 20040130: libkse renamed to libpthread OLD_FILES+=usr/lib/libkse.a OLD_FILES+=usr/lib/libkse.so @@ -3066,7 +3069,7 @@ OLD_LIBS+=usr/lib/libisc.so.1 # 200408XX OLD_LIBS+=usr/lib/snmp_netgraph.so.1 -.if ${TARGET_ARCH} != "alpha" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "sparc64" # 20040130: libkse renamed to libpthread OLD_LIBS+=usr/lib/libkse.so.1 .endif ==== //depot/projects/soc2005/libalias/UPDATING#4 (text+ko) ==== @@ -21,6 +21,11 @@ developers choose to disable these features on build machines to maximize performance. +20060816: + The IPFIREWALL_FORWARD_EXTENDED option is gone and the behaviour + for IP_FIREWALL_FORWARD is now as it was before when it was first + committed and for years after. The behaviour is now ON. + 20060725: enigma(1)/crypt(1) utility has been changed on 64 bit architectures. Now it can decrypt files created from different architectures. @@ -598,4 +603,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.452 2006/07/26 16:31:10 jkim Exp $ +$FreeBSD: src/UPDATING,v 1.453 2006/08/17 00:41:05 julian Exp $ ==== //depot/projects/soc2005/libalias/bin/date/netdate.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ #endif #include -__FBSDID("$FreeBSD: src/bin/date/netdate.c,v 1.18 2004/04/06 20:06:45 markm Exp $"); +__FBSDID("$FreeBSD: src/bin/date/netdate.c,v 1.19 2006/08/20 06:31:24 imp Exp $"); #include #include @@ -108,14 +108,14 @@ warnx("all ports in use"); goto bad; } + memset(&msg, 0, sizeof(msg)); msg.tsp_type = TSP_SETDATE; msg.tsp_vers = TSPVERSION; if (gethostname(hostname, sizeof(hostname))) { warn("gethostname"); goto bad; } - (void)strncpy(msg.tsp_name, hostname, sizeof(msg.tsp_name) - 1); - msg.tsp_name[sizeof(msg.tsp_name) - 1] = '\0'; + (void)strlcpy(msg.tsp_name, hostname, sizeof(msg.tsp_name)); msg.tsp_seq = htons((u_short)0); msg.tsp_time.tv_sec = htonl((u_long)tval); msg.tsp_time.tv_usec = htonl((u_long)0); ==== //depot/projects/soc2005/libalias/bin/df/df.c#2 (text+ko) ==== @@ -44,7 +44,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.64 2005/01/10 08:39:21 imp Exp $"); +__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.65 2006/08/20 06:32:40 imp Exp $"); #include #include @@ -113,7 +113,7 @@ memset(&totalbuf, 0, sizeof(totalbuf)); totalbuf.f_bsize = DEV_BSIZE; - strncpy(totalbuf.f_mntfromname, "total", MNAMELEN); + strlcpy(totalbuf.f_mntfromname, "total", MNAMELEN); vfslist = NULL; while ((ch = getopt(argc, argv, "abcgHhiklmnPt:")) != -1) switch (ch) { @@ -552,7 +552,7 @@ *str = 'n'; *(str + 1) = 'o'; for (i = 0, strptr = str + 2; i < cnt; i++, strptr++) { - strncpy(strptr, listptr[i], 32); + strlcpy(strptr, listptr[i], 32); strptr += strlen(listptr[i]); *strptr = ','; free(listptr[i]); ==== //depot/projects/soc2005/libalias/bin/ed/main.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/ed/main.c,v 1.28 2005/02/09 17:37:37 ru Exp $"); +__FBSDID("$FreeBSD: src/bin/ed/main.c,v 1.29 2006/08/17 23:00:33 imp Exp $"); /* * CREDITS @@ -292,7 +292,7 @@ errmsg = "invalid address"; \ return ERR; \ } \ -} while (0); +} while (0) /* next_addr: return the next line address in the command buffer */ long ==== //depot/projects/soc2005/libalias/bin/ps/ps.1#2 (text+ko) ==== @@ -27,9 +27,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 -.\" $FreeBSD: src/bin/ps/ps.1,v 1.86 2005/04/29 11:10:27 maxim Exp $ +.\" $FreeBSD: src/bin/ps/ps.1,v 1.88 2006/08/21 03:09:12 yar Exp $ .\" -.Dd March 20, 2005 +.Dd August 21, 2006 .Dt PS 1 .Os .Sh NAME @@ -179,14 +179,16 @@ .It Fl o Display information associated with the space or comma separated list of keywords specified. +The last keyword in the list may be appended with an equals +.Pq Ql = +sign and a string that spans the rest of the argument and can contain +space and comma characters. +This causes the printed header to use the specified string instead of +the standard header. Multiple keywords may also be given in the form of more than one .Fl o option. -Keywords may be appended with an equals -.Pq Ql = -sign and a string. -This causes the printed header to use the specified string instead of -the standard header. +So the header texts for multiple keywords can be changed. If all keywords have empty header texts, no header line is written. .It Fl p Display information about processes which match the specified process IDs. ==== //depot/projects/soc2005/libalias/contrib/ipfilter/BSD/Makefile#2 (text+ko) ==== @@ -3,12 +3,13 @@ # # See the IPFILTER.LICENCE file for details on licencing. # +TOP=../.. BINDEST=/usr/sbin SBINDEST=/sbin MANDIR=/usr/share/man SEARCHDIRS!=echo $(BINDEST) $(SBINDEST) /bin /usr/bin /sbin /usr/sbin /usr/local/bin /usr/local/sbin | awk '{for(i=1;i&1 | sed -n 's/.*devfs.*/-DDEVFS/p' CPU!=uname -m INC=-I/usr/include -I/sys -I/sys/sys -I/sys/arch -DEF=-D$(CPU) -D__$(CPU)__ -DINET -DKERNEL -D_KERNEL $(INC) $(DEVFS) +DEF=-D$(CPU) -D__$(CPU)__ -DINET -DKERNEL -D_KERNEL $(INC) $(DEVFS) -fno-builtin IPDEF=$(DEF) -DGATEWAY -DDIRECTED_BROADCAST VNODESHDIR=/sys/kern MLD=$(ML) @@ -516,8 +517,8 @@ (cd $(TOP)/man; make INSTALL=$(INSTALL) MANDIR=$(MANDIR) install; cd $(TOP)) coverage: - ksh -c 'for i in *.da; do j=$${i%%.da}.c; gcov $$j 2>&1 | egrep -v "y.tab.c|Could|Creating|_l\.c|\.h"; done' | sort -n > report - sort -n report | perl -e 'while(<>) { next if (/^0.00/); s/\%//g; @F=split;$$lc+=$$F[2];$$t += $$F[0]/100*$$F[2];} printf "%d of %d = %d%%\n", $$t, $$lc,$$t/$$lc*100;' >> report + ksh -c 'for i in *.da; do j=$${i%%.da}.c; gcov $$j 2>&1 | egrep -v "y.tab.c|Could|Creating|_l\.c|\.h"; done' | sort -k 1n -k 3n > report + sort -k 1n -k 3n report | perl -e 'while(<>) { next if (/^0.00/); s/\%//g; @F=split;$$lc+=$$F[2];$$t += ($$F[0]/100)*$$F[2];} printf "%d of %d = %d%%\n", $$t, $$lc,($$t/$$lc)*100;' >> report clean-coverage: /bin/rm -f *.gcov *.da ==== //depot/projects/soc2005/libalias/contrib/ipfilter/HISTORY#2 (text+ko) ==== @@ -10,6 +10,88 @@ # and especially those who have found the time to port IP Filter to new # platforms. # +4.1.13 - Released 4 April 2006 + +fix bug where null pointers introduced by proxies could cause a crash + +pass out the rule flags with SIOCAUTHW + +force loading NAT rules with bad proxy labels to cause an error + +nat_state is used unsafely in calls to fr_addstate + +make return-rst and return-icmp* work with auth rules + +4.1.12 - Released 28 March 2006 + +poll support on FreeBSD/NetBSD needs to use selrecord/selwakeup + +make the fastroute code used by ipftest invoke state/NAT + +move verbose/debug macros out of fil.c and into ip_fil.h (for wider use) + +remove unused code in fr_fastroute + +fix NAT with rules that specify forward and reverise interfaces + +add missing ipfsync_canread() and ipfsync_canwrite() + +behaviour of \ on the end of a line in ipf.conf does not match older behaviour + +remove duplicate statistics line output with "ipfstat -s" +4.1.11 - Released 19 March 2006 + +Patch for NAT with ipfsync from N. Ersen (SESCI) - www.enderunix.org + +NetBSD coverity report fixes (from run 5) + +Possible to reacquire ipf_auth without releasing it in some circumstances + +Locking in FreeBSD's iplioctl for ipf_global isn't present like it shoudl be + +Add poll support for platforms I can build on: NetBSD, FreeBSD, Solaris, Linux + +Using auth rules to return "keep state" got broken with pushing fr_addstate +call into fr_firewall + +all use of '!' in map/rdr rules to match use in ipf configs + +add -L command line option to ipmon to set the default syslog facility + +looking up a port number is more complex than needed in ipft_tx.c + +allow lib/getport to work when neither tcp or udp are specified in a rule + +remove some dead code from lib/addicmpc, lib/facpri.c, lib/icmpcode.c + +program in some more cases where TCP packets fail an initial in-window +check but should be allowed to match + +filter rule added with NAT/state handling of SIOCSTPUT doesn't properly +initialise all fields, making it possible to panic + +simplify NAT ICMP error handling where it updates checksums + +rename "min" variables to "xmin" on NetBSD to avoid problems with the +macro "min" + +#ifdef's for NetBSD compile incorrect for pfil interface + +support select/poll on NetBSD + +copying out a packet with an auth rule fails (EFAULT) because the wrong +pointer is passed to copyoutptr + +ip_len/ip_off where byte swapped twice instead of once for packets +going to be stored on the auth queue + +change timeout queue manipulation functions to make fewer mutex calls + +fix use of skip rules with groups +fix coding problems discovered by the coverity project for FreeBSD + +update BPF program validation with FreeBSD changes + 4.1.10 - Released 6 December 2005 Expand regression testing to cover more features ==== //depot/projects/soc2005/libalias/contrib/ipfilter/Makefile#2 (text+ko) ==== @@ -5,8 +5,8 @@ # provided that this notice is preserved and due credit is given # to the original author and the contributors. # -# $FreeBSD: src/contrib/ipfilter/Makefile,v 1.5 2005/12/30 11:52:22 guido Exp $ -# Id: Makefile,v 2.76.2.13 2004/11/08 18:42:40 darrenr Exp +# $FreeBSD: src/contrib/ipfilter/Makefile,v 1.6 2006/08/16 12:23:00 guido Exp $ +# Id: Makefile,v 2.76.2.19 2006/03/17 10:38:38 darrenr Exp $ # SHELL=/bin/sh BINDEST=/usr/local/bin @@ -135,6 +135,7 @@ @echo "freebsd3 - compile for FreeBSD-3.x" @echo "freebsd4 - compile for FreeBSD-4.x" @echo "freebsd5 - compile for FreeBSD-5.x" + @echo "freebsd6 - compile for FreeBSD-6.x" @echo "bsd - compile for generic 4.4BSD systems" @echo "bsdi - compile for BSD/OS" @echo "irix - compile for SGI IRIX" @@ -187,7 +188,7 @@ fi make freebsd20 -freebsd5: include +freebsd5 freebsd6: include if [ x$(INET6) = x ] ; then \ echo "#undef INET6" > opt_inet6.h; \ else \ ==== //depot/projects/soc2005/libalias/contrib/ipfilter/bpf_filter.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/contrib/ipfilter/bpf_filter.c,v 1.4 2005/12/30 11:52:22 guido Exp $ */ +/* $FreeBSD: src/contrib/ipfilter/bpf_filter.c,v 1.5 2006/08/16 12:23:00 guido Exp $ */ /*- * Copyright (c) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997 @@ -42,7 +42,7 @@ #if !(defined(lint) || defined(KERNEL) || defined(_KERNEL)) static const char rcsid[] = - "@(#) $Header: /devel/CVS/IP-Filter/bpf_filter.c,v 2.2.2.1 2005/06/18 02:41:30 darrenr Exp $ (LBL)"; + "@(#) $Header: /devel/CVS/IP-Filter/bpf_filter.c,v 2.2.2.2 2005/12/30 12:57:28 darrenr Exp $ (LBL)"; #endif #include @@ -468,9 +468,10 @@ /* * Return true if the 'fcode' is a valid filter program. * The constraints are that each jump be forward and to a valid - * code. The code must terminate with either an accept or reject. - * 'valid' is an array for use by the routine (it must be at least - * 'len' bytes long). + * code, that memory accesses are within valid ranges (to the + * extent that this can be checked statically; loads of packet + * data have to be, and are, also checked at run time), and that + * the code terminates with either an accept or reject. * * The kernel needs to be able to verify an application's filter code. * Otherwise, a bogus program could easily crash the system. @@ -480,38 +481,114 @@ struct bpf_insn *f; int len; { - register int i; - register struct bpf_insn *p; + u_int i, from; + const struct bpf_insn *p; + + if (len == 0) + return 1; + + if (len < 1 || len > BPF_MAXINSNS) + return 0; for (i = 0; i < len; ++i) { + p = &f[i]; + switch (BPF_CLASS(p->code)) { /* - * Check that that jumps are forward, and within - * the code block. + * Check that memory operations use valid addresses. */ - p = &f[i]; - if (BPF_CLASS(p->code) == BPF_JMP) { - register int from = i + 1; - - if (BPF_OP(p->code) == BPF_JA) { - if (from + p->k >= (unsigned)len) + case BPF_LD: + case BPF_LDX: + switch (BPF_MODE(p->code)) { + case BPF_IMM: + break; + case BPF_ABS: + case BPF_IND: + case BPF_MSH: + /* + * More strict check with actual packet length + * is done runtime. + */ +#if 0 + if (p->k >= bpf_maxbufsize) + return 0; +#endif + break; + case BPF_MEM: + if (p->k >= BPF_MEMWORDS) + return 0; + break; + case BPF_LEN: + break; + default: + return 0; + } + break; + case BPF_ST: + case BPF_STX: + if (p->k >= BPF_MEMWORDS) + return 0; + break; + case BPF_ALU: + switch (BPF_OP(p->code)) { + case BPF_ADD: + case BPF_SUB: + case BPF_OR: + case BPF_AND: + case BPF_LSH: + case BPF_RSH: + case BPF_NEG: + break; + case BPF_DIV: + /* + * Check for constant division by 0. + */ + if (BPF_RVAL(p->code) == BPF_K && p->k == 0) return 0; + default: + return 0; } - else if (from + p->jt >= len || from + p->jf >= len) + break; + case BPF_JMP: + /* + * Check that jumps are within the code block, + * and that unconditional branches don't go + * backwards as a result of an overflow. + * Unconditional branches have a 32-bit offset, + * so they could overflow; we check to make + * sure they don't. Conditional branches have + * an 8-bit offset, and the from address is <= + * BPF_MAXINSNS, and we assume that BPF_MAXINSNS + * is sufficiently small that adding 255 to it + * won't overflow. + * + * We know that len is <= BPF_MAXINSNS, and we + * assume that BPF_MAXINSNS is < the maximum size + * of a u_int, so that i + 1 doesn't overflow. + */ + from = i + 1; + switch (BPF_OP(p->code)) { + case BPF_JA: + if (from + p->k < from || from + p->k >= len) + return 0; + break; + case BPF_JEQ: + case BPF_JGT: + case BPF_JGE: + case BPF_JSET: + if (from + p->jt >= len || from + p->jf >= len) + return 0; + break; + default: return 0; + } + break; + case BPF_RET: + break; + case BPF_MISC: + break; + default: + return 0; } - /* - * Check that memory operations use valid addresses. - */ - if ((BPF_CLASS(p->code) == BPF_ST || - (BPF_CLASS(p->code) == BPF_LD && - (p->code & 0xe0) == BPF_MEM)) && - (p->k >= BPF_MEMWORDS || p->k < 0)) - return 0; - /* - * Check for constant division by 0. - */ - if (p->code == (BPF_ALU|BPF_DIV|BPF_K) && p->k == 0) - return 0; } return BPF_CLASS(f[len - 1].code) == BPF_RET; } ==== //depot/projects/soc2005/libalias/contrib/ipfilter/ip_fil.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/contrib/ipfilter/ip_fil.c,v 1.3 2005/04/26 15:18:45 darrenr Exp $ */ +/* $FreeBSD: src/contrib/ipfilter/ip_fil.c,v 1.4 2006/08/16 12:23:00 guido Exp $ */ /* * Copyright (C) 1993-2001 by Darren Reed. @@ -7,7 +7,7 @@ */ #if !defined(lint) static const char sccsid[] = "@(#)ip_fil.c 2.41 6/5/96 (C) 1993-2000 Darren Reed"; -static const char rcsid[] = "@(#)$Id: ip_fil.c,v 2.133.2.9 2005/01/08 14:22:18 darrenr Exp $"; +static const char rcsid[] = "@(#)$Id: ip_fil.c,v 2.133.2.11 2006/03/25 11:15:30 darrenr Exp $"; #endif #ifndef SOLARIS @@ -138,7 +138,7 @@ #include "md5.h" -#if !defined(__osf__) +#if !defined(__osf__) && !defined(__linux__) extern struct protosw inetsw[]; #endif @@ -718,13 +718,45 @@ { struct ifnet *ifp = fdp->fd_ifp; ip_t *ip = fin->fin_ip; + int error = 0; + frentry_t *fr; + void *sifp; if (!ifp) return 0; /* no routing table out here */ - ip->ip_len = htons((u_short)ip->ip_len); - ip->ip_off = htons((u_short)(ip->ip_off | IP_MF)); + fr = fin->fin_fr; ip->ip_sum = 0; + + if (fin->fin_out == 0) { + sifp = fin->fin_ifp; + fin->fin_ifp = ifp; + fin->fin_out = 1; + (void) fr_acctpkt(fin, NULL); + fin->fin_fr = NULL; + if (!fr || !(fr->fr_flags & FR_RETMASK)) { + u_32_t pass; + >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Aug 22 19:12:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0D70316A4DD; Tue, 22 Aug 2006 19:12:13 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 92B0316A4DF for ; Tue, 22 Aug 2006 19:12:12 +0000 (UTC) (envelope-from netchild@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E9A5E43D6A for ; Tue, 22 Aug 2006 19:12:06 +0000 (GMT) (envelope-from netchild@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7MJC69Z016228 for ; Tue, 22 Aug 2006 19:12:06 GMT (envelope-from netchild@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7MJC5Gn016225 for perforce@freebsd.org; Tue, 22 Aug 2006 19:12:05 GMT (envelope-from netchild@freebsd.org) Date: Tue, 22 Aug 2006 19:12:05 GMT Message-Id: <200608221912.k7MJC5Gn016225@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to netchild@freebsd.org using -f From: Alexander Leidinger To: Perforce Change Reviews Cc: Subject: PERFORCE change 104792 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 19:12:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=104792 Change 104792 by netchild@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 -__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 #include ==== //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 ==== //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 ==== //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= NMBCLUSTERS + set kern.ipc.nmbclusters= 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 -__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 @@ -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@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 -__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 -__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 #include ==== //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 -__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 @@ -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 -__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 -__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 -__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 -__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 #include @@ -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 -__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 -__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 @@ -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 -__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 #include @@ -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 -__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 #include @@ -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 -__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) <<< From owner-p4-projects@FreeBSD.ORG Tue Aug 22 21:43:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 383D916A4FE; Tue, 22 Aug 2006 21:43:19 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F268516A4FB for ; Tue, 22 Aug 2006 21:43:18 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9D75B43D45 for ; Tue, 22 Aug 2006 21:43:18 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7MLhI0Z042911 for ; Tue, 22 Aug 2006 21:43:18 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7MLhHGY042907 for perforce@freebsd.org; Tue, 22 Aug 2006 21:43:17 GMT (envelope-from piso@freebsd.org) Date: Tue, 22 Aug 2006 21:43:17 GMT Message-Id: <200608222143.k7MLhHGY042907@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104801 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 21:43:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=104801 Change 104801 by piso@piso_newluxor on 2006/08/22 21:42:43 IFC Affected files ... .. //depot/projects/soc2006/intr_filter/cam/scsi/scsi_all.c#2 integrate .. //depot/projects/soc2006/intr_filter/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/em/if_em.c#12 integrate .. //depot/projects/soc2006/intr_filter/dev/iicbus/if_ic.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/iicbus/iicbb.c#2 integrate .. //depot/projects/soc2006/intr_filter/netsmb/smb_crypt.c#2 integrate .. //depot/projects/soc2006/intr_filter/netsmb/smb_iod.c#2 integrate .. //depot/projects/soc2006/intr_filter/netsmb/smb_rq.c#2 integrate .. //depot/projects/soc2006/intr_filter/netsmb/smb_rq.h#2 integrate .. //depot/projects/soc2006/intr_filter/pci/agp_amd64.c#2 integrate .. //depot/projects/soc2006/intr_filter/ufs/ffs/ffs_snapshot.c#2 integrate Differences ... ==== //depot/projects/soc2006/intr_filter/cam/scsi/scsi_all.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__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 @@ -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/intr_filter/cam/scsi/scsi_all.h#2 (text+ko) ==== @@ -14,7 +14,7 @@ * * Ported to run under 386BSD by Julian Elischer (julian@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/intr_filter/dev/em/if_em.c#12 (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/intr_filter/dev/iicbus/if_ic.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__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/intr_filter/dev/iicbus/iicbb.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__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/intr_filter/netsmb/smb_crypt.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__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 #include @@ -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/intr_filter/netsmb/smb_iod.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__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 #include @@ -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/intr_filter/netsmb/smb_rq.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__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 $"); #include #include @@ -141,9 +141,9 @@ rqp->sr_rqsig = (u_int8_t *)mb_reserve(mbp, 8); mb_put_uint16le(mbp, 0); } - rqp->sr_rqtid = (u_int16_t*)mb_reserve(mbp, sizeof(u_int16_t)); + rqp->sr_rqtid = mb_reserve(mbp, sizeof(u_int16_t)); mb_put_uint16le(mbp, 1 /*scred->sc_p->p_pid & 0xffff*/); - rqp->sr_rquid = (u_int16_t*)mb_reserve(mbp, sizeof(u_int16_t)); + rqp->sr_rquid = mb_reserve(mbp, sizeof(u_int16_t)); mb_put_uint16le(mbp, rqp->sr_mid); return 0; } @@ -239,7 +239,7 @@ void smb_rq_bstart(struct smb_rq *rqp) { - rqp->sr_bcount = (u_short*)mb_reserve(&rqp->sr_rq, sizeof(u_short)); + rqp->sr_bcount = mb_reserve(&rqp->sr_rq, sizeof(u_short)); rqp->sr_rq.mb_count = 0; } @@ -255,7 +255,7 @@ bcnt = rqp->sr_rq.mb_count; if (bcnt > 0xffff) SMBERROR("byte count too large (%d)\n", bcnt); - *rqp->sr_bcount = htole16(bcnt); + le16enc(rqp->sr_bcount, bcnt); } int ==== //depot/projects/soc2006/intr_filter/netsmb/smb_rq.h#2 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/netsmb/smb_rq.h,v 1.4 2005/01/07 01:45:49 imp Exp $ + * $FreeBSD: src/sys/netsmb/smb_rq.h,v 1.5 2006/08/22 03:05:51 marcel Exp $ */ #ifndef _NETSMB_SMB_RQ_H_ #define _NETSMB_SMB_RQ_H_ @@ -82,7 +82,7 @@ u_int8_t sr_rqflags; u_int16_t sr_rqflags2; u_char * sr_wcount; - u_short * sr_bcount; + void * sr_bcount; /* Points to 2-byte buffer. */ struct mdchain sr_rp; int sr_rpgen; int sr_rplast; @@ -95,8 +95,8 @@ struct timespec sr_timesent; int sr_lerror; u_int8_t * sr_rqsig; - u_int16_t * sr_rqtid; - u_int16_t * sr_rquid; + void * sr_rqtid; /* Points to 2-byte buffer. */ + void * sr_rquid; /* Points to 2-byte buffer. */ u_int8_t sr_errclass; u_int16_t sr_serror; u_int32_t sr_error; ==== //depot/projects/soc2006/intr_filter/pci/agp_amd64.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/pci/agp_amd64.c,v 1.11 2006/05/30 18:41:26 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/pci/agp_amd64.c,v 1.12 2006/08/21 19:10:58 jkim Exp $"); #include "opt_bus.h" @@ -182,14 +182,9 @@ sc->n_mctrl = n; - if (bootverbose) { + if (bootverbose) device_printf(dev, "%d Miscellaneous Control unit(s) found.\n", sc->n_mctrl); - for (i = 0; i < sc->n_mctrl; i++) - device_printf(dev, "Aperture Base[%d]: 0x%08x\n", i, - pci_cfgregread(0, sc->mctrl[i], 3, - AGP_AMD64_APBASE, 4) & AGP_AMD64_APBASE_MASK); - } if ((error = agp_generic_attach(dev))) return error; @@ -380,11 +375,11 @@ uint32_t apbase; int i; - apbase = pci_cfgregread(0, sc->mctrl[0], 3, AGP_AMD64_APBASE, 4); + sc->apbase = rman_get_start(sc->agp.as_aperture); + apbase = (sc->apbase >> 25) & AGP_AMD64_APBASE_MASK; for (i = 0; i < sc->n_mctrl; i++) - pci_cfgregwrite(0, sc->mctrl[i], 3, AGP_AMD64_APBASE, - apbase & ~(AGP_AMD64_APBASE_MASK & ~(uint32_t)0x7f), 4); - sc->apbase = apbase << 25; + pci_cfgregwrite(0, sc->mctrl[i], 3, + AGP_AMD64_APBASE, apbase, 4); } static void ==== //depot/projects/soc2006/intr_filter/ufs/ffs/ffs_snapshot.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/ufs/ffs/ffs_snapshot.c,v 1.127 2006/05/16 00:14:20 tegge Exp $"); +__FBSDID("$FreeBSD: src/sys/ufs/ffs/ffs_snapshot.c,v 1.128 2006/08/21 17:20:19 kib Exp $"); #include "opt_quota.h" @@ -2091,7 +2091,7 @@ int launched_async_io, prev_norunningbuf; long saved_runningbufspace; - if ((VTOI(bp->b_vp)->i_flags & SF_SNAPSHOT) != 0) + if (devvp != bp->b_vp && (VTOI(bp->b_vp)->i_flags & SF_SNAPSHOT) != 0) return (0); /* Update on a snapshot file */ if (td->td_pflags & TDP_COWINPROGRESS) panic("ffs_copyonwrite: recursive call"); From owner-p4-projects@FreeBSD.ORG Tue Aug 22 22:35:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7A7B016A4E0; Tue, 22 Aug 2006 22:35:26 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5608016A4DE for ; Tue, 22 Aug 2006 22:35:26 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0B6CB43D45 for ; Tue, 22 Aug 2006 22:35:26 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7MMZPiQ047539 for ; Tue, 22 Aug 2006 22:35:25 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7MMZP1d047536 for perforce@freebsd.org; Tue, 22 Aug 2006 22:35:25 GMT (envelope-from gonzo@FreeBSD.org) Date: Tue, 22 Aug 2006 22:35:25 GMT Message-Id: <200608222235.k7MMZP1d047536@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104808 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 22:35:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=104808 Change 104808 by gonzo@gonzo_hideout on 2006/08/22 22:35:12 o define QUANTUM_2POW_MIN and friends for __mips__. Affected files ... .. //depot/projects/mips2/src/lib/libc/stdlib/malloc.c#3 edit Differences ... ==== //depot/projects/mips2/src/lib/libc/stdlib/malloc.c#3 (text+ko) ==== @@ -275,6 +275,13 @@ # define USE_BRK # define NO_TLS #endif +#ifdef __mips__ +# define QUANTUM_2POW_MIN 3 +# define SIZEOF_PTR 4 +# define USE_BRK +# define NO_TLS +#endif + #ifdef __powerpc__ # define QUANTUM_2POW_MIN 4 # define SIZEOF_PTR 4 From owner-p4-projects@FreeBSD.ORG Tue Aug 22 22:39:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DD76D16A4DE; Tue, 22 Aug 2006 22:39:31 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B97AD16A4DA for ; Tue, 22 Aug 2006 22:39:31 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8839543D55 for ; Tue, 22 Aug 2006 22:39:31 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7MMdVwD047772 for ; Tue, 22 Aug 2006 22:39:31 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7MMdV2k047769 for perforce@freebsd.org; Tue, 22 Aug 2006 22:39:31 GMT (envelope-from gonzo@FreeBSD.org) Date: Tue, 22 Aug 2006 22:39:31 GMT Message-Id: <200608222239.k7MMdV2k047769@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104809 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 22:39:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=104809 Change 104809 by gonzo@gonzo_hideout on 2006/08/22 22:39:22 o Add MIPS arch support to libdisk. Affected files ... .. //depot/projects/mips2/src/lib/libdisk/disk.c#2 edit .. //depot/projects/mips2/src/lib/libdisk/libdisk.h#2 edit Differences ... ==== //depot/projects/mips2/src/lib/libdisk/disk.c#2 (text+ko) ==== @@ -52,6 +52,8 @@ p_amd64 #elif defined(__arm__) p_arm +#elif defined(__mips__) + p_mips #else IHAVENOIDEA #endif ==== //depot/projects/mips2/src/lib/libdisk/libdisk.h#2 (text+ko) ==== @@ -29,7 +29,8 @@ p_ia64, p_ppc, p_amd64, - p_arm + p_arm, + p_mips }; extern const enum platform platform; From owner-p4-projects@FreeBSD.ORG Tue Aug 22 23:26:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C111516A4DF; Tue, 22 Aug 2006 23:26:30 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9D7AD16A4DD for ; Tue, 22 Aug 2006 23:26:30 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6B81E43D45 for ; Tue, 22 Aug 2006 23:26:30 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7MNQUUQ052056 for ; Tue, 22 Aug 2006 23:26:30 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7MNQTNe052053 for perforce@freebsd.org; Tue, 22 Aug 2006 23:26:29 GMT (envelope-from gonzo@FreeBSD.org) Date: Tue, 22 Aug 2006 23:26:29 GMT Message-Id: <200608222326.k7MNQTNe052053@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104812 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Aug 2006 23:26:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=104812 Change 104812 by gonzo@gonzo_hideout on 2006/08/22 23:26:19 o Atomic swap for libpthread. Affected files ... .. //depot/projects/mips2/src/lib/libpthread/arch/mips/include/atomic_ops.h#2 edit Differences ... ==== //depot/projects/mips2/src/lib/libpthread/arch/mips/include/atomic_ops.h#2 (text+ko) ==== @@ -41,7 +41,18 @@ static inline void atomic_swap32(intptr_t *dst, intptr_t val, intptr_t *res) { - *res = __swp(val, dst); + u_int temp; + + __asm __volatile ( + "1:\n\t" + "ll %[temp], %[dst]\n\t" + "sw %[temp], %[res]\n\t" + "sc %[val], %[dst]\n\t" + "beqz %[temp], 1b\n\t" + : [temp] "=&r"(temp), [res] "+m"(*res) + : [val] "r"(val), [dst] "m"(*dst) + : "memory" + ); } #define atomic_swap_ptr(d, v, r) \ From owner-p4-projects@FreeBSD.ORG Wed Aug 23 05:01:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DE47D16A4E5; Wed, 23 Aug 2006 05:01:37 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AAA4516A4DE for ; Wed, 23 Aug 2006 05:01:37 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 48F4943D4C for ; Wed, 23 Aug 2006 05:01:37 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7N51bix000963 for ; Wed, 23 Aug 2006 05:01:37 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7N51ahr000960 for perforce@freebsd.org; Wed, 23 Aug 2006 05:01:36 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Aug 2006 05:01:36 GMT Message-Id: <200608230501.k7N51ahr000960@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104823 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 05:01:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=104823 Change 104823 by rwatson@rwatson_sesame on 2006/08/23 05:00:49 Don't encode the string "bsm" into the audit filter API, prefer the string "audit". Suggested by: Martin Englund Affected files ... .. //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#7 edit .. //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.h#4 edit .. //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd_conf.c#4 edit .. //depot/projects/trustedbsd/openbsm/bsm/audit_filter.h#3 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#6 $ + * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#7 $ */ #include @@ -106,13 +106,13 @@ * Present raw BSM to a set of registered and interested filters. */ static void -present_bsmrecord(struct timespec *ts, u_char *data, u_int len) +present_auditrecord(struct timespec *ts, u_char *data, u_int len) { struct auditfilter_module *am; TAILQ_FOREACH(am, &filter_list, am_list) { - if (am->am_bsmrecord != NULL) - (am->am_bsmrecord)(am->am_instance, ts, data, len); + if (am->am_auditrecord != NULL) + (am->am_auditrecord)(am->am_instance, ts, data, len); } } @@ -191,7 +191,7 @@ continue; if (clock_gettime(CLOCK_REALTIME, &ts) < 0) err(-1, "clock_gettime"); - present_bsmrecord(&ts, buf, reclen); + present_auditrecord(&ts, buf, reclen); present_tokens(&ts, buf, reclen); free(buf); } @@ -241,7 +241,7 @@ continue; if (clock_gettime(CLOCK_REALTIME, &ts) < 0) err(-1, "clock_gettime"); - present_bsmrecord(&ts, record, reclen); + present_auditrecord(&ts, record, reclen); present_tokens(&ts, record, reclen); } } ==== //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.h#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.h#3 $ + * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.h#4 $ */ #define AUDITFILTERD_CONFFILE "/etc/security/audit_filter" @@ -57,7 +57,7 @@ audit_filter_attach_t am_attach; audit_filter_reinit_t am_reinit; audit_filter_record_t am_record; - audit_filter_bsmrecord_t am_bsmrecord; + audit_filter_auditrecord_t am_auditrecord; audit_filter_detach_t am_detach; /* ==== //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd_conf.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd_conf.c#3 $ + * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd_conf.c#4 $ */ /* @@ -149,8 +149,8 @@ am->am_attach = dlsym(am->am_dlhandle, AUDIT_FILTER_ATTACH_STRING); am->am_reinit = dlsym(am->am_dlhandle, AUDIT_FILTER_REINIT_STRING); am->am_record = dlsym(am->am_dlhandle, AUDIT_FILTER_RECORD_STRING); - am->am_bsmrecord = dlsym(am->am_dlhandle, - AUDIT_FILTER_BSMRECORD_STRING); + am->am_auditrecord = dlsym(am->am_dlhandle, + AUDIT_FILTER_AUDITRECORD_STRING); am->am_detach = dlsym(am->am_dlhandle, AUDIT_FILTER_DETACH_STRING); if (am->am_attach != NULL) { @@ -163,7 +163,7 @@ am->am_attach = NULL; am->am_reinit = NULL; am->am_record = NULL; - am->am_bsmrecord = NULL; + am->am_auditrecord = NULL; am->am_detach = NULL; return (-1); } ==== //depot/projects/trustedbsd/openbsm/bsm/audit_filter.h#3 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_filter.h#2 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_filter.h#3 $ */ #ifndef _BSM_AUDIT_FILTER_H_ @@ -38,7 +38,7 @@ * audit_filter_reinit_t - arguments to module have changed * audit_filter_record_t - present parsed record to filter module, with * receipt time - * audit_filter_bsmrecord_t - present bsm format record to filter module, + * audit_filter_auditrecord_t - present BSM format record to filter module, * with receipt time * audit_filter_destach_t - filter module is being detached * @@ -49,7 +49,7 @@ typedef int (*audit_filter_reinit_t)(void *instance, int argc, char *argv[]); typedef void (*audit_filter_record_t)(void *instance, struct timespec *ts, int token_count, const tokenstr_t tok[]); -typedef void (*audit_filter_bsmrecord_t)(void *instance, struct timespec *ts, +typedef void (*audit_filter_auditrecord_t)(void *instance, struct timespec *ts, void *data, u_int len); typedef void (*audit_filter_detach_t)(void *instance); @@ -66,12 +66,12 @@ #define AUDIT_FILTER_ATTACH audit_filter_attach #define AUDIT_FILTER_REINIT audit_filter_reinit #define AUDIT_FILTER_RECORD audit_filter_record -#define AUDIT_FILTER_BSMRECORD audit_filter_bsmrecord +#define AUDIT_FILTER_AUDITRECORD audit_filter_auditrecord #define AUDIT_FILTER_DETACH audit_filter_detach #define AUDIT_FILTER_ATTACH_STRING "audit_filter_attach" #define AUDIT_FILTER_REINIT_STRING "audit_filter_reinit" #define AUDIT_FILTER_RECORD_STRING "audit_filter_record" -#define AUDIT_FILTER_BSMRECORD_STRING "audit_filter_bsmrecord" +#define AUDIT_FILTER_AUDITRECORD_STRING "audit_filter_auditrecord" #define AUDIT_FILTER_DETACH_STRING "audit_filter_detach" #endif /* !_BSM_AUDIT_FILTER_H_ */ From owner-p4-projects@FreeBSD.ORG Wed Aug 23 05:09:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E38E16A4DF; Wed, 23 Aug 2006 05:09:49 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E50F716A4DD for ; Wed, 23 Aug 2006 05:09:48 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 78BB543D53 for ; Wed, 23 Aug 2006 05:09:48 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7N59mHa002594 for ; Wed, 23 Aug 2006 05:09:48 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7N59mTD002591 for perforce@freebsd.org; Wed, 23 Aug 2006 05:09:48 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Aug 2006 05:09:48 GMT Message-Id: <200608230509.k7N59mTD002591@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104824 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 05:09:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=104824 Change 104824 by rwatson@rwatson_sesame on 2006/08/23 05:09:16 Update for OpenBSM 1.0a9. Affected files ... .. //depot/projects/trustedbsd/openbsm/HISTORY#23 edit .. //depot/projects/trustedbsd/openbsm/VERSION#11 edit .. //depot/projects/trustedbsd/openbsm/configure#25 edit .. //depot/projects/trustedbsd/openbsm/configure.ac#28 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/HISTORY#23 (text+ko) ==== @@ -1,3 +1,8 @@ +OpenBSM 1.0 alpha 9 + +- Further refine audit filter API to avoid encoding "BSM"/"bsm" strings into + it; prefer "AUDIT"/"audit". + OpenBSM 1.0 alpha 8 - Correct typo in definition of AUR_INT. @@ -192,4 +197,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/openbsm/HISTORY#22 $ +$P4: //depot/projects/trustedbsd/openbsm/HISTORY#23 $ ==== //depot/projects/trustedbsd/openbsm/VERSION#11 (text+ko) ==== @@ -1,1 +1,1 @@ -OPENBSM_1_0_ALPHA_8 +OPENBSM_1_0_ALPHA_9 ==== //depot/projects/trustedbsd/openbsm/configure#25 (xtext) ==== @@ -1,7 +1,7 @@ #! /bin/sh -# From configure.ac P4: //depot/projects/trustedbsd/openbsm/configure.ac#26 . +# From configure.ac P4: //depot/projects/trustedbsd/openbsm/configure.ac#27 . # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59 for OpenBSM 1.0a8. +# Generated by GNU Autoconf 2.59 for OpenBSM 1.0a9. # # Report bugs to . # @@ -424,8 +424,8 @@ # Identity of this package. PACKAGE_NAME='OpenBSM' PACKAGE_TARNAME='openbsm' -PACKAGE_VERSION='1.0a8' -PACKAGE_STRING='OpenBSM 1.0a8' +PACKAGE_VERSION='1.0a9' +PACKAGE_STRING='OpenBSM 1.0a9' PACKAGE_BUGREPORT='trustedbsd-audit@TrustesdBSD.org' ac_unique_file="bin/auditreduce/auditreduce.c" @@ -955,7 +955,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures OpenBSM 1.0a8 to adapt to many kinds of systems. +\`configure' configures OpenBSM 1.0a9 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1021,7 +1021,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of OpenBSM 1.0a8:";; + short | recursive ) echo "Configuration of OpenBSM 1.0a9:";; esac cat <<\_ACEOF @@ -1162,7 +1162,7 @@ test -n "$ac_init_help" && exit 0 if $ac_init_version; then cat <<\_ACEOF -OpenBSM configure 1.0a8 +OpenBSM configure 1.0a9 generated by GNU Autoconf 2.59 Copyright (C) 2003 Free Software Foundation, Inc. @@ -1176,7 +1176,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by OpenBSM $as_me 1.0a8, which was +It was created by OpenBSM $as_me 1.0a9, which was generated by GNU Autoconf 2.59. Invocation command line was $ $0 $@ @@ -19278,7 +19278,7 @@ # Define the identity of the package. PACKAGE=OpenBSM - VERSION=1.0a8 + VERSION=1.0a9 cat >>confdefs.h <<_ACEOF @@ -23478,7 +23478,7 @@ } >&5 cat >&5 <<_CSEOF -This file was extended by OpenBSM $as_me 1.0a8, which was +This file was extended by OpenBSM $as_me 1.0a9, which was generated by GNU Autoconf 2.59. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -23541,7 +23541,7 @@ cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ -OpenBSM config.status 1.0a8 +OpenBSM config.status 1.0a9 configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" ==== //depot/projects/trustedbsd/openbsm/configure.ac#28 (text+ko) ==== @@ -2,8 +2,8 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.59) -AC_INIT([OpenBSM], [1.0a8], [trustedbsd-audit@TrustesdBSD.org],[openbsm]) -AC_REVISION([$P4: //depot/projects/trustedbsd/openbsm/configure.ac#27 $]) +AC_INIT([OpenBSM], [1.0a9], [trustedbsd-audit@TrustesdBSD.org],[openbsm]) +AC_REVISION([$P4: //depot/projects/trustedbsd/openbsm/configure.ac#28 $]) AC_CONFIG_SRCDIR([bin/auditreduce/auditreduce.c]) AC_CONFIG_AUX_DIR(config) AC_CONFIG_HEADER([config/config.h]) From owner-p4-projects@FreeBSD.ORG Wed Aug 23 05:51:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9FF2416A4E1; Wed, 23 Aug 2006 05:51:45 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7A17F16A4DE for ; Wed, 23 Aug 2006 05:51:45 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F0C5C43D6B for ; Wed, 23 Aug 2006 05:51:42 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7N5pg5k004983 for ; Wed, 23 Aug 2006 05:51:42 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7N5pgrU004980 for perforce@freebsd.org; Wed, 23 Aug 2006 05:51:42 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Aug 2006 05:51:42 GMT Message-Id: <200608230551.k7N5pgrU004980@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104826 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 05:51:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=104826 Change 104826 by rwatson@rwatson_sesame on 2006/08/23 05:51:15 Catch up with BSM->AUDIT rename for filter API. Affected files ... .. //depot/projects/trustedbsd/openbsm/modules/auditfilter_noop/auditfilter_noop.c#3 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/modules/auditfilter_noop/auditfilter_noop.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/modules/auditfilter_noop/auditfilter_noop.c#2 $ + * $P4: //depot/projects/trustedbsd/openbsm/modules/auditfilter_noop/auditfilter_noop.c#3 $ */ /* @@ -60,7 +60,7 @@ } void -AUDIT_FILTER_BSMRECORD(void *instance, struct timespec *ts, u_char *data, +AUDIT_FILTER_AUDITRECORD(void *instance, struct timespec *ts, u_char *data, u_int len) { From owner-p4-projects@FreeBSD.ORG Wed Aug 23 06:08:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D3F3916A4E7; Wed, 23 Aug 2006 06:08:21 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9666E16A4E5 for ; Wed, 23 Aug 2006 06:08:21 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0D0EE43DA0 for ; Wed, 23 Aug 2006 06:08:06 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7N68420007062 for ; Wed, 23 Aug 2006 06:08:04 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7N684lv007059 for perforce@freebsd.org; Wed, 23 Aug 2006 06:08:04 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Aug 2006 06:08:04 GMT Message-Id: <200608230608.k7N684lv007059@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104827 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 06:08:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=104827 Change 104827 by rwatson@rwatson_sesame on 2006/08/23 06:07:35 Rename OpenBSM-internal audit header and trailer size constants to use AUDIT_ instead of BSM_ prefixes. Suggested by: Martin Englund Affected files ... .. //depot/projects/trustedbsd/openbsm/bsm/audit_internal.h#14 edit .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#27 edit .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_io.c#40 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/bsm/audit_internal.h#14 (text+ko) ==== @@ -34,7 +34,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_internal.h#13 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_internal.h#14 $ */ #ifndef _AUDIT_INTERNAL_H @@ -68,15 +68,15 @@ typedef struct au_record au_record_t; -/* We could determined the header and trailer sizes by - * defining appropriate structures. We hold off that approach - * till we have a consistant way of using structures for all tokens. - * This is not straightforward since these token structures may - * contain pointers of whose contents we dont know the size - * (e.g text tokens) +/* + * We could determined the header and trailer sizes by defining appropriate + * structures. We hold off that approach until we have a consistant way of + * using structures for all tokens. This is not straightforward since these + * token structures may contain pointers of whose contents we dont know the + * size (e.g text tokens). */ -#define BSM_HEADER_SIZE 18 -#define BSM_TRAILER_SIZE 7 +#define AUDIT_HEADER_SIZE 18 +#define AUDIT_TRAILER_SIZE 7 /* * BSM token streams store fields in big endian byte order, so as to be ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#27 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#26 $ + * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#27 $ */ #include @@ -174,7 +174,7 @@ return (-1); /* Invalid descriptor */ } - if (rec->len + tok->len + BSM_TRAILER_SIZE > MAX_AUDIT_RECORD_SIZE) { + if (rec->len + tok->len + AUDIT_TRAILER_SIZE > MAX_AUDIT_RECORD_SIZE) { errno = ENOMEM; return (-1); } @@ -208,7 +208,7 @@ u_char *dptr; int error; - tot_rec_size = rec->len + BSM_HEADER_SIZE + BSM_TRAILER_SIZE; + tot_rec_size = rec->len + AUDIT_HEADER_SIZE + AUDIT_TRAILER_SIZE; header = au_to_header32(tot_rec_size, event, 0); if (header == NULL) return (-1); @@ -285,7 +285,7 @@ goto cleanup; } - tot_rec_size = rec->len + BSM_HEADER_SIZE + BSM_TRAILER_SIZE; + tot_rec_size = rec->len + AUDIT_HEADER_SIZE + AUDIT_TRAILER_SIZE; if (tot_rec_size > MAX_AUDIT_RECORD_SIZE) { /* @@ -335,7 +335,7 @@ } retval = 0; - tot_rec_size = rec->len + BSM_HEADER_SIZE + BSM_TRAILER_SIZE; + tot_rec_size = rec->len + AUDIT_HEADER_SIZE + AUDIT_TRAILER_SIZE; if ((tot_rec_size > MAX_AUDIT_RECORD_SIZE) || (tot_rec_size > *buflen)) { /* ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_io.c#40 (text+ko) ==== @@ -31,7 +31,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_io.c#39 $ + * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_io.c#40 $ */ #include @@ -2448,7 +2448,7 @@ int err = 0; int recoversize; - recoversize = len - (tok->len + BSM_TRAILER_SIZE); + recoversize = len - (tok->len + AUDIT_TRAILER_SIZE); if (recoversize <= 0) return (-1); From owner-p4-projects@FreeBSD.ORG Wed Aug 23 06:15:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0CBDA16A4E0; Wed, 23 Aug 2006 06:15:15 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C2DB916A4DE for ; Wed, 23 Aug 2006 06:15:14 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 53BFF43D6E for ; Wed, 23 Aug 2006 06:15:14 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7N6FEgR007443 for ; Wed, 23 Aug 2006 06:15:14 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7N6FDCN007440 for perforce@freebsd.org; Wed, 23 Aug 2006 06:15:13 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Aug 2006 06:15:13 GMT Message-Id: <200608230615.k7N6FDCN007440@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104828 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 06:15:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=104828 Change 104828 by rwatson@rwatson_sesame on 2006/08/23 06:14:44 Rename more OpenBSM-specific constants from BSM_ to AUDIT_, including the header version identifiers, and maximum groups/args/env values. Suggested by: Martin Englund Affected files ... .. //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#23 edit .. //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#27 edit .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_token.c#51 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#23 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#22 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#23 $ */ #ifndef _BSM_AUDIT_RECORD_H_ @@ -199,7 +199,7 @@ #define PAD_NOTATTR 0x4000 /* nonattributable event */ #define PAD_FAILURE 0x8000 /* fail audit event */ -#define BSM_MAX_GROUPS 16 +#define AUDIT_MAX_GROUPS 16 /* * A number of BSM versions are floating around and defined. Here are @@ -207,11 +207,11 @@ * Solaris BSM version, but has a separate version number in order to * identify a potentially different event identifier name space. */ -#define BSM_HEADER_VERSION_OLDDARWIN 1 /* In retrospect, a mistake. */ -#define BSM_HEADER_VERSION_SOLARIS 2 -#define BSM_HEADER_VERSION_TSOL25 3 -#define BSM_HEADER_VERSION_TSOL 4 -#define BSM_HEADER_VERSION_OPENBSM 10 +#define AUDIT_HEADER_VERSION_OLDDARWIN 1 /* In retrospect, a mistake. */ +#define AUDIT_HEADER_VERSION_SOLARIS 2 +#define AUDIT_HEADER_VERSION_TSOL25 3 +#define AUDIT_HEADER_VERSION_TSOL 4 +#define AUDIT_HEADER_VERSION_OPENBSM 10 /* * BSM define is AUT_TRAILER_MAGIC; Apple BSM define is TRAILER_PAD_MAGIC; we ==== //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#27 (text+ko) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#26 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#27 $ */ #ifndef _LIBBSM_H_ @@ -37,8 +37,8 @@ * solely to allow OpenSSH to compile; Darwin/Apple code should not use them. */ -#define BSM_MAX_ARGS 10 -#define BSM_MAX_ENV 10 +#define AUDIT_MAX_ARGS 10 +#define AUDIT_MAX_ENV 10 #include #include @@ -218,7 +218,7 @@ */ typedef struct { u_int32_t count; - char *text[BSM_MAX_ARGS]; + char *text[AUDIT_MAX_ARGS]; } au_execarg_t; /* @@ -227,7 +227,7 @@ */ typedef struct { u_int32_t count; - char *text[BSM_MAX_ENV]; + char *text[AUDIT_MAX_ENV]; } au_execenv_t; /* @@ -259,7 +259,7 @@ */ typedef struct { u_int16_t no; - u_int32_t list[BSM_MAX_GROUPS]; + u_int32_t list[AUDIT_MAX_GROUPS]; } au_groups_t; /* ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_token.c#51 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_token.c#50 $ + * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_token.c#51 $ */ #include @@ -309,7 +309,7 @@ au_to_groups(int *groups) { - return (au_to_newgroups(BSM_MAX_GROUPS, groups)); + return (au_to_newgroups(AUDIT_MAX_GROUPS, groups)); } /* @@ -1155,7 +1155,7 @@ ADD_U_CHAR(dptr, AUT_HEADER32); ADD_U_INT32(dptr, rec_size); - ADD_U_CHAR(dptr, BSM_HEADER_VERSION_OPENBSM); + ADD_U_CHAR(dptr, AUDIT_HEADER_VERSION_OPENBSM); ADD_U_INT16(dptr, e_type); ADD_U_INT16(dptr, e_mod); From owner-p4-projects@FreeBSD.ORG Wed Aug 23 06:17:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 17EFE16A4E1; Wed, 23 Aug 2006 06:17:18 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E449B16A4DD for ; Wed, 23 Aug 2006 06:17:17 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 937AF43D49 for ; Wed, 23 Aug 2006 06:17:17 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7N6HHlm007585 for ; Wed, 23 Aug 2006 06:17:17 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7N6HH3G007582 for perforce@freebsd.org; Wed, 23 Aug 2006 06:17:17 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Aug 2006 06:17:17 GMT Message-Id: <200608230617.k7N6HH3G007582@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104829 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 06:17:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=104829 Change 104829 by rwatson@rwatson_sesame on 2006/08/23 06:16:19 Update version and credit information. Affected files ... .. //depot/projects/trustedbsd/openbsm/HISTORY#24 edit .. //depot/projects/trustedbsd/openbsm/README#19 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/HISTORY#24 (text+ko) ==== @@ -1,7 +1,8 @@ OpenBSM 1.0 alpha 9 -- Further refine audit filter API to avoid encoding "BSM"/"bsm" strings into - it; prefer "AUDIT"/"audit". +- Rename many OpenBSM-specific constants and API elements containing the + strings "BSM" and "bsm" to "AUDIT" and "audit", observing that this is + true for almost all existing constants and APIs. OpenBSM 1.0 alpha 8 @@ -197,4 +198,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/openbsm/HISTORY#23 $ +$P4: //depot/projects/trustedbsd/openbsm/HISTORY#24 $ ==== //depot/projects/trustedbsd/openbsm/README#19 (text+ko) ==== @@ -75,6 +75,7 @@ Christian Peron Martin Fong Pawel Worach + Martin Englund In addition, Coverity, Inc.'s Prevent(tm) static analysis tool and Gimpel Software's FlexeLint tool were used to identify a number of bugs in the @@ -96,4 +97,4 @@ http://www.TrustedBSD.org/ -$P4: //depot/projects/trustedbsd/openbsm/README#18 $ +$P4: //depot/projects/trustedbsd/openbsm/README#19 $ From owner-p4-projects@FreeBSD.ORG Wed Aug 23 06:20:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 34EA116A4E2; Wed, 23 Aug 2006 06:20:22 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0BCFE16A4E0 for ; Wed, 23 Aug 2006 06:20:22 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AE47943D46 for ; Wed, 23 Aug 2006 06:20:21 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7N6KL3w007776 for ; Wed, 23 Aug 2006 06:20:21 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7N6KLLT007773 for perforce@freebsd.org; Wed, 23 Aug 2006 06:20:21 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Aug 2006 06:20:21 GMT Message-Id: <200608230620.k7N6KLLT007773@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104830 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 06:20:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=104830 Change 104830 by rwatson@rwatson_sesame on 2006/08/23 06:19:34 Rename two internal variables to be audit_ instead of bsm_. Affected files ... .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#28 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#28 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#27 $ + * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#28 $ */ #include @@ -54,14 +54,14 @@ static au_record_t *open_desc_table[MAX_AUDIT_RECORDS]; /* The current number of active record descriptors */ -static int bsm_rec_count = 0; +static int audit_rec_count = 0; /* * Records that can be recycled are maintained in the list given below. The * maximum number of elements that can be present in this list is bounded by * MAX_AUDIT_RECORDS. Memory allocated for these records are never freed. */ -static LIST_HEAD(, au_record) bsm_free_q; +static LIST_HEAD(, au_record) audit_free_q; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; @@ -93,15 +93,15 @@ pthread_mutex_lock(&mutex); - if (bsm_rec_count == 0) - LIST_INIT(&bsm_free_q); + if (audit_rec_count == 0) + LIST_INIT(&audit_free_q); /* * Find an unused descriptor, remove it from the free list, mark as * used. */ - if (!LIST_EMPTY(&bsm_free_q)) { - rec = LIST_FIRST(&bsm_free_q); + if (!LIST_EMPTY(&audit_free_q)) { + rec = LIST_FIRST(&audit_free_q); rec->used = 1; LIST_REMOVE(rec, au_rec_q); } @@ -125,7 +125,7 @@ pthread_mutex_lock(&mutex); - if (bsm_rec_count == MAX_AUDIT_RECORDS) { + if (audit_rec_count == MAX_AUDIT_RECORDS) { pthread_mutex_unlock(&mutex); free(rec->data); free(rec); @@ -134,9 +134,9 @@ errno = ENOMEM; return (-1); } - rec->desc = bsm_rec_count; - open_desc_table[bsm_rec_count] = rec; - bsm_rec_count++; + rec->desc = audit_rec_count; + open_desc_table[audit_rec_count] = rec; + audit_rec_count++; pthread_mutex_unlock(&mutex); @@ -257,7 +257,7 @@ pthread_mutex_lock(&mutex); /* Add the record to the freelist tail */ - LIST_INSERT_HEAD(&bsm_free_q, rec, au_rec_q); + LIST_INSERT_HEAD(&audit_free_q, rec, au_rec_q); pthread_mutex_unlock(&mutex); } From owner-p4-projects@FreeBSD.ORG Wed Aug 23 07:32:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2031C16A4DE; Wed, 23 Aug 2006 07:32:55 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D80EF16A4DA for ; Wed, 23 Aug 2006 07:32:54 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9F69943D49 for ; Wed, 23 Aug 2006 07:32:54 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7N7WsQj013792 for ; Wed, 23 Aug 2006 07:32:54 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7N7WqbF013789 for perforce@freebsd.org; Wed, 23 Aug 2006 07:32:52 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Aug 2006 07:32:52 GMT Message-Id: <200608230732.k7N7WqbF013789@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104832 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 07:32:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=104832 Change 104832 by rwatson@rwatson_sesame on 2006/08/23 07:32:42 Add comment describing the contens of auditfilterd.c, and pointing at auditfilterd_conf.c for the remainder. Affected files ... .. //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#8 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#8 (text+ko) ==== @@ -25,7 +25,16 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#7 $ + * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#8 $ + */ + +/* + * Main file for the audit filter daemon, which presents audit records to a + * set of run-time registered loadable modules. This is the main event loop + * of the daemon, which handles starting up, waiting for records, and + * presenting records to configured modules. auditfilterd_conf.c handles the + * reading and management of the configuration, module list and module state, + * etc. */ #include From owner-p4-projects@FreeBSD.ORG Wed Aug 23 07:50:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 674D616A4E1; Wed, 23 Aug 2006 07:50:18 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3212616A4DA for ; Wed, 23 Aug 2006 07:50:18 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CDDFE43D55 for ; Wed, 23 Aug 2006 07:50:17 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7N7oHa4017161 for ; Wed, 23 Aug 2006 07:50:17 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7N7oHO4017158 for perforce@freebsd.org; Wed, 23 Aug 2006 07:50:17 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Aug 2006 07:50:17 GMT Message-Id: <200608230750.k7N7oHO4017158@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104835 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 07:50:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=104835 Change 104835 by rwatson@rwatson_sesame on 2006/08/23 07:49:54 Change the audit filter API to pass an immutable void * into module APIs, which is then used via a cookie API, rather than being owned by the module. This allows the audit filter daemon to offer services that require per-instance state -- for example, per-module preselection. Further rename am_auditrecord to am_rawrecord to make the functional distinction from am_record more clear. Affected files ... .. //depot/projects/trustedbsd/openbsm/HISTORY#25 edit .. //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#9 edit .. //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.h#5 edit .. //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd_conf.c#5 edit .. //depot/projects/trustedbsd/openbsm/bsm/audit_filter.h#4 edit .. //depot/projects/trustedbsd/openbsm/modules/auditfilter_noop/auditfilter_noop.c#4 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/HISTORY#25 (text+ko) ==== @@ -1,8 +1,13 @@ OpenBSM 1.0 alpha 9 - Rename many OpenBSM-specific constants and API elements containing the - strings "BSM" and "bsm" to "AUDIT" and "audit", observing that this is - true for almost all existing constants and APIs. + strings "BSM" and "bsm" to "AUDIT" and "audit", observing that this is true + for almost all existing constants and APIs. +- Instead of passing a per-instance cookie directly into all audit filter + APIs, pass in the audit filter daemon state pointer, which is then used by + the module using an audit_filter_{get,set}cookie() API. This will allow + future service APIs provided by the filter daemon to maintain their own + state -- for example, per-module preselection state. OpenBSM 1.0 alpha 8 @@ -198,4 +203,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/openbsm/HISTORY#24 $ +$P4: //depot/projects/trustedbsd/openbsm/HISTORY#25 $ ==== //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#9 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#8 $ + * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.c#9 $ */ /* @@ -115,13 +115,13 @@ * Present raw BSM to a set of registered and interested filters. */ static void -present_auditrecord(struct timespec *ts, u_char *data, u_int len) +present_rawrecord(struct timespec *ts, u_char *data, u_int len) { struct auditfilter_module *am; TAILQ_FOREACH(am, &filter_list, am_list) { - if (am->am_auditrecord != NULL) - (am->am_auditrecord)(am->am_instance, ts, data, len); + if (am->am_rawrecord != NULL) + (am->am_rawrecord)(am, ts, data, len); } } @@ -149,8 +149,7 @@ TAILQ_FOREACH(am, &filter_list, am_list) { if (am->am_record != NULL) - (am->am_record)(am->am_instance, ts, tokencount, - tokens); + (am->am_record)(am, ts, tokencount, tokens); } } @@ -200,7 +199,7 @@ continue; if (clock_gettime(CLOCK_REALTIME, &ts) < 0) err(-1, "clock_gettime"); - present_auditrecord(&ts, buf, reclen); + present_rawrecord(&ts, buf, reclen); present_tokens(&ts, buf, reclen); free(buf); } @@ -250,7 +249,7 @@ continue; if (clock_gettime(CLOCK_REALTIME, &ts) < 0) err(-1, "clock_gettime"); - present_auditrecord(&ts, record, reclen); + present_rawrecord(&ts, record, reclen); present_tokens(&ts, record, reclen); } } ==== //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.h#5 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.h#4 $ + * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd.h#5 $ */ #define AUDITFILTERD_CONFFILE "/etc/security/audit_filter" @@ -53,11 +53,11 @@ /* * Fields provided by or extracted from the module. */ - void *am_instance; + void *am_cookie; audit_filter_attach_t am_attach; audit_filter_reinit_t am_reinit; audit_filter_record_t am_record; - audit_filter_auditrecord_t am_auditrecord; + audit_filter_rawrecord_t am_rawrecord; audit_filter_detach_t am_detach; /* ==== //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd_conf.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd_conf.c#4 $ + * $P4: //depot/projects/trustedbsd/openbsm/bin/auditfilterd/auditfilterd_conf.c#5 $ */ /* @@ -38,6 +38,12 @@ * Modules are in one of two states: attached, or detached. If attach fails, * detach is not called because it was not attached. If a module is attached * and a call to its reinit method fails, we will detach it. + * + * Modules are passed a (void *) reference to their configuration state so + * that they may pass this into any common APIs we provide which may rely on + * that state. Currently, the only such API is the cookie API, which allows + * per-instance state to be maintained by a module. In the future, this will + * also be used to support per-instance preselection state. */ #include @@ -105,8 +111,8 @@ { if (am->am_detach != NULL) - am->am_detach(am->am_instance); - am->am_instance = NULL; + am->am_detach(am); + am->am_cookie = NULL; (void)dlclose(am->am_dlhandle); am->am_dlhandle = NULL; } @@ -149,21 +155,22 @@ am->am_attach = dlsym(am->am_dlhandle, AUDIT_FILTER_ATTACH_STRING); am->am_reinit = dlsym(am->am_dlhandle, AUDIT_FILTER_REINIT_STRING); am->am_record = dlsym(am->am_dlhandle, AUDIT_FILTER_RECORD_STRING); - am->am_auditrecord = dlsym(am->am_dlhandle, - AUDIT_FILTER_AUDITRECORD_STRING); + am->am_rawrecord = dlsym(am->am_dlhandle, + AUDIT_FILTER_RAWRECORD_STRING); am->am_detach = dlsym(am->am_dlhandle, AUDIT_FILTER_DETACH_STRING); if (am->am_attach != NULL) { - if (am->am_attach(&am->am_instance, am->am_argc, am->am_argv) + if (am->am_attach(am, am->am_argc, am->am_argv) != AUDIT_FILTER_SUCCESS) { warnx("auditfilter_module_attach: %s: failed", am->am_modulename); dlclose(am->am_dlhandle); am->am_dlhandle = NULL; + am->am_cookie = NULL; am->am_attach = NULL; am->am_reinit = NULL; am->am_record = NULL; - am->am_auditrecord = NULL; + am->am_rawrecord = NULL; am->am_detach = NULL; return (-1); } @@ -184,7 +191,7 @@ if (am->am_reinit == NULL) return (0); - if (am->am_reinit(&am->am_instance, am->am_argc, am->am_argv) != + if (am->am_reinit(am, am->am_argc, am->am_argv) != AUDIT_FILTER_SUCCESS) { warnx("auditfilter_module_reinit: %s: failed", am->am_modulename); @@ -483,3 +490,24 @@ auditfilter_module_list_detach(&filter_list); auditfilter_module_list_free(&filter_list); } + +/* + * APIs to allow modules to query and set their per-instance cookie. + */ +void +audit_filter_getcookie(void *instance, void **cookie) +{ + struct auditfilter_module *am; + + am = (struct auditfilter_module *)instance; + *cookie = am->am_cookie; +} + +void +audit_filter_setcookie(void *instance, void *cookie) +{ + struct auditfilter_module *am; + + am = (struct auditfilter_module *)instance; + am->am_cookie = cookie; +} ==== //depot/projects/trustedbsd/openbsm/bsm/audit_filter.h#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_filter.h#3 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_filter.h#4 $ */ #ifndef _BSM_AUDIT_FILTER_H_ @@ -38,22 +38,28 @@ * audit_filter_reinit_t - arguments to module have changed * audit_filter_record_t - present parsed record to filter module, with * receipt time - * audit_filter_auditrecord_t - present BSM format record to filter module, + * audit_filter_rawrecord_t - present BSM format record to filter module, * with receipt time * audit_filter_destach_t - filter module is being detached * * There may be many instances of the same filter, identified by the instance * void pointer maintained by the filter instance. */ -typedef int (*audit_filter_attach_t)(void **instance, int argc, char *argv[]); +typedef int (*audit_filter_attach_t)(void *instance, int argc, char *argv[]); typedef int (*audit_filter_reinit_t)(void *instance, int argc, char *argv[]); typedef void (*audit_filter_record_t)(void *instance, struct timespec *ts, int token_count, const tokenstr_t tok[]); -typedef void (*audit_filter_auditrecord_t)(void *instance, struct timespec *ts, +typedef void (*audit_filter_rawrecord_t)(void *instance, struct timespec *ts, void *data, u_int len); typedef void (*audit_filter_detach_t)(void *instance); /* + * APIs that may be called by audit filters. + */ +void audit_filter_getcookie(void *instance, void **cookie); +void audit_filter_setcookie(void *instance, void *cookie); + +/* * Values to be returned by audit_filter_init_t. */ #define AUDIT_FILTER_SUCCESS (0) @@ -66,12 +72,12 @@ #define AUDIT_FILTER_ATTACH audit_filter_attach #define AUDIT_FILTER_REINIT audit_filter_reinit #define AUDIT_FILTER_RECORD audit_filter_record -#define AUDIT_FILTER_AUDITRECORD audit_filter_auditrecord +#define AUDIT_FILTER_RAWRECORD audit_filter_rawrecord #define AUDIT_FILTER_DETACH audit_filter_detach #define AUDIT_FILTER_ATTACH_STRING "audit_filter_attach" #define AUDIT_FILTER_REINIT_STRING "audit_filter_reinit" #define AUDIT_FILTER_RECORD_STRING "audit_filter_record" -#define AUDIT_FILTER_AUDITRECORD_STRING "audit_filter_auditrecord" +#define AUDIT_FILTER_RAWRECORD_STRING "audit_filter_rawrecord" #define AUDIT_FILTER_DETACH_STRING "audit_filter_detach" #endif /* !_BSM_AUDIT_FILTER_H_ */ ==== //depot/projects/trustedbsd/openbsm/modules/auditfilter_noop/auditfilter_noop.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/modules/auditfilter_noop/auditfilter_noop.c#3 $ + * $P4: //depot/projects/trustedbsd/openbsm/modules/auditfilter_noop/auditfilter_noop.c#4 $ */ /* @@ -39,7 +39,7 @@ #include int -AUDIT_FILTER_ATTACH(void **instance, int argc, char *argv[]) +AUDIT_FILTER_ATTACH(void *instance, int argc, char *argv[]) { return (0); @@ -60,7 +60,7 @@ } void -AUDIT_FILTER_AUDITRECORD(void *instance, struct timespec *ts, u_char *data, +AUDIT_FILTER_RAWRECORD(void *instance, struct timespec *ts, u_char *data, u_int len) { From owner-p4-projects@FreeBSD.ORG Wed Aug 23 17:25:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0120716A4E6; Wed, 23 Aug 2006 17:25:24 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B93EF16A4E0 for ; Wed, 23 Aug 2006 17:25:23 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6610143D49 for ; Wed, 23 Aug 2006 17:25:23 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NHPNrV028616 for ; Wed, 23 Aug 2006 17:25:23 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NHPMkV028613 for perforce@freebsd.org; Wed, 23 Aug 2006 17:25:22 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Aug 2006 17:25:22 GMT Message-Id: <200608231725.k7NHPMkV028613@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104850 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 17:25:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=104850 Change 104850 by rwatson@rwatson_sesame on 2006/08/23 17:24:40 Some updates of audit.log.5 to reflect improved libbsm(3) support for token creation APIs, 64-bit tokens, etc. This man page still leaves much to be desired. Affected files ... .. //depot/projects/trustedbsd/openbsm/man/audit.log.5#10 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/man/audit.log.5#10 (text+ko) ==== @@ -1,5 +1,5 @@ .\"- -.\" Copyright (c) 2005 Robert N. M. Watson +.\" Copyright (c) 2005-2006 Robert N. M. Watson .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $P4: //depot/projects/trustedbsd/openbsm/man/audit.log.5#9 $ +.\" $P4: //depot/projects/trustedbsd/openbsm/man/audit.log.5#10 $ .\" .Dd May 1, 2005 .Dt AUDIT.LOG 5 @@ -91,10 +91,14 @@ token is used to mark the beginning of a complete audit record, and includes the length of the total record in bytes, a version number for the record layout, the event type and subtype, and the time at which the event occurred. -A +A 32-bit +.Dv header +token can be created using +.Xr au_to_header32 3 ; +a 64-bit .Dv header token can be created using -.Xr au_to_header32 3 . +.Xr au_to_header64 3 . .Bl -column -offset ind ".Sy Field Name Width XX" ".Sy XX Bytes XXXX" ".Sy Description" .It Sy "Field" Ta Sy Bytes Ta Sy Description .It Li "Token ID" Ta "1 byte" Ta "Token ID" @@ -111,11 +115,14 @@ token is an expanded version of the .Dv header token, with the addition of a machine IPv4 or IPv6 address. -The -.Xr libbsm 3 -API cannot currently create an -.Dv expanded header -token. +A 32-bit extended +.Dv header +token can be created using +.Xr au_to_header32_ex 3 ; +a 64-bit extended +.Dv header +token can be created using +.Xr au_to_header64_ex 3 . .Bl -column -offset ind ".Sy Field Name Width XX" ".Sy XX Bytes XXXX" ".Sy Description" .It Sy "Field" Ta Sy Bytes Ta Sy Description .It Li "Token ID" Ta "1 byte" Ta "Token ID" @@ -154,11 +161,10 @@ .Dv How to print field is present to specify how to print the data, but interpretation of that field is not currently defined. -The -.Xr libbsm 3 -API cannot currently create an +An .Dv arbitrary data -token. +token can be created using +.Xr au_to_data 3 . .Bl -column -offset ind ".Sy Field Name Width XX" ".Sy XX Bytes XXXX" ".Sy Description" .It Sy "Field" Ta Sy Bytes Ta Sy Description .It Li "Token ID" Ta "1 byte" Ta "Token ID" From owner-p4-projects@FreeBSD.ORG Wed Aug 23 21:32:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DE6DE16A4E0; Wed, 23 Aug 2006 21:32:06 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A348D16A4DA for ; Wed, 23 Aug 2006 21:32:06 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5B77E43D4C for ; Wed, 23 Aug 2006 21:32:06 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NLW6fM019747 for ; Wed, 23 Aug 2006 21:32:06 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NLW5cH019744 for perforce@freebsd.org; Wed, 23 Aug 2006 21:32:05 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 21:32:05 GMT Message-Id: <200608232132.k7NLW5cH019744@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104859 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 21:32:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=104859 Change 104859 by gonzo@gonzo_hideout on 2006/08/23 21:31:24 o Introduce barrier functions to userland. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#15 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#15 (text+ko) ==== @@ -33,21 +33,6 @@ #include #include -static __inline void -mips_barrier(void) -{ - __asm __volatile (".set noreorder\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - ".set reorder\n\t" - : : : "memory"); -} static __inline void mips_tlbp(void) @@ -93,16 +78,6 @@ mips_barrier(); } -static __inline void -mips_wbflush(void) -{ - __asm __volatile ("sync" : : : "memory"); - mips_barrier(); -#if 0 - __asm __volatile("mtc0 %0, $12\n" /* MIPS_COP_0_STATUS */ - : : "r" (flag)); -#endif -} #if 0 /* XXX mips64 */ @@ -217,7 +192,40 @@ __asm __volatile ("break"); } +#endif /* _KERNEL */ + +/* + * These functions are required by user-land atomi ops + */ + +static __inline void +mips_barrier(void) +{ + __asm __volatile (".set noreorder\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + ".set reorder\n\t" + : : : "memory"); +} + static __inline void +mips_wbflush(void) +{ + __asm __volatile ("sync" : : : "memory"); + mips_barrier(); +#if 0 + __asm __volatile("mtc0 %0, $12\n" /* MIPS_COP_0_STATUS */ + : : "r" (flag)); +#endif +} + +static __inline void mips_read_membar(void) { /* Nil */ @@ -229,6 +237,4 @@ mips_wbflush(); } -#endif /* _KERNEL */ - #endif /* !_MACHINE_CPUFUNC_H_ */ From owner-p4-projects@FreeBSD.ORG Wed Aug 23 21:37:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E0F3516A4E1; Wed, 23 Aug 2006 21:37:13 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A3AFD16A4DF for ; Wed, 23 Aug 2006 21:37:13 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5021C43D4C for ; Wed, 23 Aug 2006 21:37:13 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NLbDl5020048 for ; Wed, 23 Aug 2006 21:37:13 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NLbDRh020045 for perforce@freebsd.org; Wed, 23 Aug 2006 21:37:13 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 21:37:13 GMT Message-Id: <200608232137.k7NLbDRh020045@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104860 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 21:37:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=104860 Change 104860 by gonzo@gonzo_hideout on 2006/08/23 21:36:41 o Throw away amd64 profiling code. o Replace profiling codes with stubs. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/profile.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/profile.h#2 (text+ko) ==== @@ -57,19 +57,7 @@ #define MCOUNT_DECL(s) #define MCOUNT_ENTER(s) #define MCOUNT_EXIT(s) -#ifdef __GNUCLIKE_ASM -#define MCOUNT_OVERHEAD(label) \ - __asm __volatile("pushq %0; call __mcount; popq %%rcx" \ - : \ - : "i" (profil) \ - : "ax", "dx", "cx", "di", "si", "r8", "r9", "memory") -#define MEXITCOUNT_OVERHEAD() \ - __asm __volatile("call .mexitcount; 1:" \ - : : \ - : "ax", "dx", "cx", "di", "si", "r8", "r9", "memory") -#define MEXITCOUNT_OVERHEAD_GETLABEL(labelp) \ - __asm __volatile("movq $1b,%0" : "=rm" (labelp)) -#elif defined(lint) +#if defined(lint) #define MCOUNT_OVERHEAD(label) #define MEXITCOUNT_OVERHEAD() #define MEXITCOUNT_OVERHEAD_GETLABEL() @@ -112,71 +100,11 @@ static void _mcount(uintfptr_t frompc, uintfptr_t selfpc) __used; \ static void _mcount -#ifdef __GNUCLIKE_ASM -#define MCOUNT __asm(" \n\ - .globl .mcount \n\ - .type .mcount @function \n\ -.mcount: \n\ - pushq %rbp \n\ - movq %rsp,%rbp \n\ - pushq %rdi \n\ - pushq %rsi \n\ - pushq %rdx \n\ - pushq %rcx \n\ - pushq %r8 \n\ - pushq %r9 \n\ - pushq %rax \n\ - movq 8(%rbp),%rsi \n\ - movq (%rbp),%rdi \n\ - movq 8(%rdi),%rdi \n\ - call _mcount \n\ - popq %rax \n\ - popq %r9 \n\ - popq %r8 \n\ - popq %rcx \n\ - popq %rdx \n\ - popq %rsi \n\ - popq %rdi \n\ - leave \n\ - ret \n\ - .size .mcount, . - .mcount"); -#if 0 -/* - * We could use this, except it doesn't preserve the registers that were - * being passed with arguments to the function that we were inserted - * into. I've left it here as documentation of what the code above is - * supposed to do. - */ #define MCOUNT \ void \ mcount() \ { \ - uintfptr_t selfpc, frompc; \ - /* \ - * Find the return address for mcount, \ - * and the return address for mcount's caller. \ - * \ - * selfpc = pc pushed by call to mcount \ - */ \ - __asm("movq 8(%%rbp),%0" : "=r" (selfpc)); \ - /* \ - * frompc = pc pushed by call to mcount's caller. \ - * The caller's stack frame has already been built, so %rbp is \ - * the caller's frame pointer. The caller's raddr is in the \ - * caller's frame following the caller's caller's frame pointer.\ - */ \ - __asm("movq (%%rbp),%0" : "=r" (frompc)); \ - frompc = ((uintfptr_t *)frompc)[1]; \ - _mcount(frompc, selfpc); \ } -#endif -#else /* !__GNUCLIKE_ASM */ -#define MCOUNT \ -void \ -mcount() \ -{ \ -} -#endif /* __GNUCLIKE_ASM */ typedef u_long uintfptr_t; From owner-p4-projects@FreeBSD.ORG Wed Aug 23 21:46:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8986C16A4E5; Wed, 23 Aug 2006 21:46:26 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 662FF16A4E0 for ; Wed, 23 Aug 2006 21:46:26 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1B9BE43D46 for ; Wed, 23 Aug 2006 21:46:26 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NLkP8L022353 for ; Wed, 23 Aug 2006 21:46:25 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NLkPD9022350 for perforce@freebsd.org; Wed, 23 Aug 2006 21:46:25 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 21:46:25 GMT Message-Id: <200608232146.k7NLkPD9022350@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104861 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 21:46:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=104861 Change 104861 by gonzo@gonzo_hideout on 2006/08/23 21:45:36 o Clean out "XXXMIPS" comment. Affected files ... .. //depot/projects/mips2/src/sys/vm/vnode_pager.c#4 edit Differences ... ==== //depot/projects/mips2/src/sys/vm/vnode_pager.c#4 (text+ko) ==== @@ -1060,9 +1060,7 @@ for (i = 0; i < count; i++) rtvals[i] = VM_PAGER_AGAIN; - /* - * XXXMIPS: Change this later. For not it causes problems. - */ + if ((int64_t)m[0]->pindex < 0) { printf("vnode_pager_putpages: attempt to write meta-data!!! -- 0x%lx(%lx)\n", (long)m[0]->pindex, (u_long)m[0]->dirty); From owner-p4-projects@FreeBSD.ORG Wed Aug 23 21:49:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4E16116A4FE; Wed, 23 Aug 2006 21:49:33 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2CD5A16A4FC for ; Wed, 23 Aug 2006 21:49:33 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2B0B443D46 for ; Wed, 23 Aug 2006 21:49:32 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NLnVSZ022560 for ; Wed, 23 Aug 2006 21:49:31 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NLnVaU022557 for perforce@freebsd.org; Wed, 23 Aug 2006 21:49:31 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 21:49:31 GMT Message-Id: <200608232149.k7NLnVaU022557@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104863 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 21:49:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=104863 Change 104863 by gonzo@gonzo_hideout on 2006/08/23 21:48:56 o Define register size for libc routines in asm.h o Replace amd64's ucontext with mips' one. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/asm.h#6 edit .. //depot/projects/mips2/src/sys/mips/include/ucontext.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/asm.h#6 (text+ko) ==== @@ -101,6 +101,11 @@ #define ta2 $10 #define ta3 $11 +/* XXX: values which depends on register size. + * Used for sigcontext/mcontext_t handling. + */ +#define SZREG 4 +#define _OFFSETOF_SC_REGS 8 #if 0 /* XXX: Should this be kt0 or kt1? */ ==== //depot/projects/mips2/src/sys/mips/include/ucontext.h#2 (text+ko) ==== @@ -39,44 +39,14 @@ * and ucontext_t at the same time. */ __register_t mc_onstack; /* XXX - sigcontext compat. */ - __register_t mc_rdi; /* machine state (struct trapframe) */ - __register_t mc_rsi; - __register_t mc_rdx; - __register_t mc_rcx; - __register_t mc_r8; - __register_t mc_r9; - __register_t mc_rax; - __register_t mc_rbx; - __register_t mc_rbp; - __register_t mc_r10; - __register_t mc_r11; - __register_t mc_r12; - __register_t mc_r13; - __register_t mc_r14; - __register_t mc_r15; - __register_t mc_trapno; - __register_t mc_addr; - __register_t mc_flags; - __register_t mc_err; - __register_t mc_rip; - __register_t mc_cs; - __register_t mc_rflags; - __register_t mc_rsp; - __register_t mc_ss; + __register_t mc_pc; /* pc at time of signal */ + __register_t mc_regs[32]; /* processor regs 0 to 31 */ + __register_t mullo, mulhi;/* mullo and mulhi registers... */ + int mc_fpused; /* fp has been used */ + int mc_fpregs[33]; /* fp regs 0 to 31 and csr */ + int mc_fpc_eir; /* floating point exception instruction reg */ + int mc_xxx[8]; /* XXX reserved */ - long mc_len; /* sizeof(mcontext_t) */ -#define _MC_FPFMT_NODEV 0x10000 /* device not present or configured */ -#define _MC_FPFMT_XMM 0x10002 - long mc_fpformat; -#define _MC_FPOWNED_NONE 0x20000 /* FP state not used */ -#define _MC_FPOWNED_FPU 0x20001 /* FP state came from FPU */ -#define _MC_FPOWNED_PCB 0x20002 /* FP state came from PCB */ - long mc_ownedfp; - /* - * See for the internals of mc_fpstate[]. - */ - long mc_fpstate[64] __aligned(16); - long mc_spare[8]; } mcontext_t; #endif /* !_MACHINE_UCONTEXT_H_ */ From owner-p4-projects@FreeBSD.ORG Wed Aug 23 21:50:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E79816A4E1; Wed, 23 Aug 2006 21:50:35 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0D00716A4DD for ; Wed, 23 Aug 2006 21:50:35 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4EADE43D46 for ; Wed, 23 Aug 2006 21:50:34 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NLoYrZ022643 for ; Wed, 23 Aug 2006 21:50:34 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NLoYFT022640 for perforce@freebsd.org; Wed, 23 Aug 2006 21:50:34 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 21:50:34 GMT Message-Id: <200608232150.k7NLoYFT022640@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104864 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 21:50:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=104864 Change 104864 by gonzo@gonzo_hideout on 2006/08/23 21:50:28 o Keep signal.h in sync with ucontext.h Affected files ... .. //depot/projects/mips2/src/sys/mips/include/signal.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/signal.h#3 (text+ko) ==== @@ -60,41 +60,15 @@ * those in mcontext_t. */ struct sigcontext { - struct __sigset sc_mask; /* signal mask to restore */ - long sc_onstack; /* sigstack state to restore */ - long sc_rdi; /* machine state (struct trapframe) */ - long sc_rsi; - long sc_rdx; - long sc_rcx; - long sc_r8; - long sc_r9; - long sc_rax; - long sc_rbx; - long sc_rbp; - long sc_r10; - long sc_r11; - long sc_r12; - long sc_r13; - long sc_r14; - long sc_r15; - long sc_trapno; - long sc_addr; - long sc_flags; - long sc_err; - long sc_rip; - long sc_cs; - long sc_rflags; - long sc_rsp; - long sc_ss; - long sc_len; /* sizeof(mcontext_t) */ - /* - * XXX - See and for - * the following fields. - */ - long sc_fpformat; - long sc_ownedfp; - long sc_fpstate[64] __aligned(16); - long sc_spare[8]; + int sc_onstack; /* sigstack state to restore */ + __register_t sc_pc; /* pc at time of signal */ + __register_t sc_regs[32]; /* processor regs 0 to 31 */ + __register_t mullo, mulhi; /* mullo and mulhi registers... */ + int sc_fpused; /* fp has been used */ + int sc_fpregs[33]; /* fp regs 0 to 31 and csr */ + int sc_fpc_eir; /* floating point exception instruction + reg */ + int sc_xxx[8]; /* XXX reserved */ }; #endif /* __BSD_VISIBLE */ From owner-p4-projects@FreeBSD.ORG Wed Aug 23 21:58:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6420216A4DF; Wed, 23 Aug 2006 21:58:47 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0FB8016A4DD for ; Wed, 23 Aug 2006 21:58:47 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BE23243D49 for ; Wed, 23 Aug 2006 21:58:46 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NLwkhP023079 for ; Wed, 23 Aug 2006 21:58:46 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NLwkwv023076 for perforce@freebsd.org; Wed, 23 Aug 2006 21:58:46 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 21:58:46 GMT Message-Id: <200608232158.k7NLwkwv023076@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104865 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 21:58:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=104865 Change 104865 by gonzo@gonzo_hideout on 2006/08/23 21:58:17 o Replace intr disable/enable approach to atomic operations with load linked/store conditional. It is suitable for both kernel and userland. o Throw away atomic ops fro char/short. The seemed to be unnecessary. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/atomic.h#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/atomic.h#4 (text+ko) ==== @@ -1,4 +1,5 @@ /*- + * Copyright (c) 2002-2004 Juli Mallett. All rights reserved. * Copyright (c) 2006 John Baldwin * All rights reserved. * @@ -38,16 +39,6 @@ * Various simple arithmetic on memory which is atomic in the presence * of interrupts and multiple processors. * - * atomic_set_char(P, V) (*(u_char*)(P) |= (V)) - * atomic_clear_char(P, V) (*(u_char*)(P) &= ~(V)) - * atomic_add_char(P, V) (*(u_char*)(P) += (V)) - * atomic_subtract_char(P, V) (*(u_char*)(P) -= (V)) - * - * atomic_set_short(P, V) (*(u_short*)(P) |= (V)) - * atomic_clear_short(P, V) (*(u_short*)(P) &= ~(V)) - * atomic_add_short(P, V) (*(u_short*)(P) += (V)) - * atomic_subtract_short(P, V) (*(u_short*)(P) -= (V)) - * * atomic_set_int(P, V) (*(u_int*)(P) |= (V)) * atomic_clear_int(P, V) (*(u_int*)(P) &= ~(V)) * atomic_add_int(P, V) (*(u_int*)(P) += (V)) @@ -62,28 +53,27 @@ */ /* - * The above functions are expanded inline in the statically-linked - * kernel and kernel modules. For userland we will have to figure out - * something different. + * Integer atomic operations, hardware calls this single. */ -#ifdef _KERNEL +#define ATOMIC_OP(op, asmop) \ +static __inline void \ +atomic_ ## op ## _int(volatile u_int *p, u_int val) \ +{ \ + u_int temp; \ + \ + __asm __volatile ( \ + "1:\n\t" \ + "ll %[temp], %[p]\n\t" \ + asmop "\n\t" \ + "sc %[temp], %[p]\n\t" \ + "beqz %[temp], 1b\n\t" \ + : [temp] "=&r"(temp), [p] "+m"(*p) \ + : [val] "r"(val) \ + : "memory" \ + ); \ +} -/* - * The assembly is volatilized to demark potential before-and-after side - * effects if an interrupt or SMP collision were to occur. - */ -#define ATOMIC_OP(NAME, TYPE, OP, V) \ -static __inline void \ -atomic_##NAME##_##TYPE(volatile u_##TYPE *p, u_##TYPE v)\ -{ \ - register_t s; \ - \ - s = intr_disable(); \ - *p OP V; \ - intr_restore(s); \ -} \ -struct __hack /* * Atomic compare and set, used by the mutex functions @@ -96,15 +86,25 @@ static __inline int atomic_cmpset_int(volatile u_int *dst, u_int exp, u_int src) { - register_t s; + u_int temp; int res; - s = intr_disable(); - res = (*dst == exp); - if (res) - *dst = src; - intr_restore(s); - return (res); + __asm __volatile ( + "1:\n\t" + "move %[res], $0\n\t" + "ll %[temp], %[dst]\n\t" + "bne %[temp], %[exp], 2f\n\t" + "move %[temp], %[src]\n\t" + "li %[res], 1\n\t" + "sc %[temp], %[dst]\n\t" + "beqz %[temp], 1b\n\t" + "2:\n\t" + : [res] "=&r"(res), [temp] "=&r"(temp), [dst] "+m"(*dst) + : [exp] "r"(exp), [src] "r"(src) + : "memory" + ); + + return res; } /* @@ -114,97 +114,73 @@ static __inline u_int atomic_fetchadd_int(volatile u_int *p, u_int v) { - register_t s; - u_int res; + u_int temp, res; + + __asm __volatile ( + "1:\n\t" + "ll %[temp], %[p]\n\t" + "move %[res], %[temp]\n\t" + "addu %[temp], %[v]\n\t" + "sc %[temp], %[p]\n\t" + "beqz %[temp], 1b\n\t" + : [res] "=&r"(res), [temp] "=&r"(temp), [p] "+m"(*p) + : [v] "r"(v) + : "memory" + ); + + return res; - s = intr_disable(); - res = (*p += v); - intr_restore(s); - return (res); } /* Read the current value and store a zero in the destination. */ static __inline u_int atomic_readandclear_int(volatile u_int *addr) { - register_t s; - u_int result; + u_int temp, res; + + __asm __volatile ( + "1:\n\t" + "ll %[temp], %[p]\n\t" + "move %[res], %[temp]\n\t" + "move %[temp], $0\n\t" + "sc %[temp], %[p]\n\t" + "beqz %[temp], 1b\n\t" + : [res] "=&r"(res), [temp] "=&r"(temp), [p] "+m"(*addr) + : + : "memory" + ); - s = intr_disable(); - result = *addr; - *addr = 0; - /* - * XXXMIPS: I think it's a mistake. We should have intr_restore() - * here, shouldn't we? - */ -#if 0 - intr_disable(); -#endif - intr_restore(s); - return (result); + return res; } #define ATOMIC_STORE_LOAD(TYPE) \ static __inline u_##TYPE \ atomic_load_acq_##TYPE(volatile u_##TYPE *p) \ { \ - return (*p); \ + u_##TYPE res; \ + res = *p; \ + mips_write_membar(); \ + return res; \ } \ \ static __inline void \ atomic_store_rel_##TYPE(volatile u_##TYPE *p, u_##TYPE v)\ { \ + mips_read_membar(); \ *p = v; \ } \ struct __hack -#else - -/* XXX: userland */ - -#endif /* _KERNEL */ - -ATOMIC_OP(set, char, |=, v); -ATOMIC_OP(clear, char, &=, ~v); -ATOMIC_OP(add, char, +=, v); -ATOMIC_OP(subtract, char, -=, v); +ATOMIC_OP(add, "addu %[temp], %[val]") +ATOMIC_OP(clear, "not %[val] ; and %[temp], %[val] ; not %[val]") +ATOMIC_OP(set, "or %[temp], %[val]") +ATOMIC_OP(subtract, "subu %[temp], %[val]") -ATOMIC_OP(set, short, |=, v); -ATOMIC_OP(clear, short, &=, ~v); -ATOMIC_OP(add, short, +=, v); -ATOMIC_OP(subtract, short, -=, v); - -ATOMIC_OP(set, int, |=, v); -ATOMIC_OP(clear, int, &=, ~v); -ATOMIC_OP(add, int, +=, v); -ATOMIC_OP(subtract, int, -=, v); - -ATOMIC_STORE_LOAD(char); -ATOMIC_STORE_LOAD(short); ATOMIC_STORE_LOAD(int); #undef ATOMIC_OP #undef ATOMIC_STORE_LOAD -/* Acquire and release variants are identical to the normal ones. */ -#define atomic_set_acq_char atomic_set_char -#define atomic_set_rel_char atomic_set_char -#define atomic_clear_acq_char atomic_clear_char -#define atomic_clear_rel_char atomic_clear_char -#define atomic_add_acq_char atomic_add_char -#define atomic_add_rel_char atomic_add_char -#define atomic_subtract_acq_char atomic_subtract_char -#define atomic_subtract_rel_char atomic_subtract_char - -#define atomic_set_acq_short atomic_set_short -#define atomic_set_rel_short atomic_set_short -#define atomic_clear_acq_short atomic_clear_short -#define atomic_clear_rel_short atomic_clear_short -#define atomic_add_acq_short atomic_add_short -#define atomic_add_rel_short atomic_add_short -#define atomic_subtract_acq_short atomic_subtract_short -#define atomic_subtract_rel_short atomic_subtract_short - #define atomic_set_acq_int atomic_set_int #define atomic_set_rel_int atomic_set_int #define atomic_clear_acq_int atomic_clear_int @@ -216,38 +192,6 @@ #define atomic_cmpset_acq_int atomic_cmpset_int #define atomic_cmpset_rel_int atomic_cmpset_int -/* Operations on 8-bit bytes. */ -#define atomic_set_8 atomic_set_char -#define atomic_set_acq_8 atomic_set_acq_char -#define atomic_set_rel_8 atomic_set_rel_char -#define atomic_clear_8 atomic_clear_char -#define atomic_clear_acq_8 atomic_clear_acq_char -#define atomic_clear_rel_8 atomic_clear_rel_char -#define atomic_add_8 atomic_add_char -#define atomic_add_acq_8 atomic_add_acq_char -#define atomic_add_rel_8 atomic_add_rel_char -#define atomic_subtract_8 atomic_subtract_char -#define atomic_subtract_acq_8 atomic_subtract_acq_char -#define atomic_subtract_rel_8 atomic_subtract_rel_char -#define atomic_load_acq_8 atomic_load_acq_char -#define atomic_store_rel_8 atomic_store_rel_char - -/* Operations on 16-bit words. */ -#define atomic_set_16 atomic_set_short -#define atomic_set_acq_16 atomic_set_acq_short -#define atomic_set_rel_16 atomic_set_rel_short -#define atomic_clear_16 atomic_clear_short -#define atomic_clear_acq_16 atomic_clear_acq_short -#define atomic_clear_rel_16 atomic_clear_rel_short -#define atomic_add_16 atomic_add_short -#define atomic_add_acq_16 atomic_add_acq_short -#define atomic_add_rel_16 atomic_add_rel_short -#define atomic_subtract_16 atomic_subtract_short -#define atomic_subtract_acq_16 atomic_subtract_acq_short -#define atomic_subtract_rel_16 atomic_subtract_rel_short -#define atomic_load_acq_16 atomic_load_acq_short -#define atomic_store_rel_16 atomic_store_rel_short - /* Operations on 32-bit double words. */ #define atomic_set_32 atomic_set_int #define atomic_set_acq_32 atomic_set_acq_int From owner-p4-projects@FreeBSD.ORG Wed Aug 23 22:01:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 834EE16A4E9; Wed, 23 Aug 2006 22:01:51 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3FA1516A4DE for ; Wed, 23 Aug 2006 22:01:51 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0A27843D45 for ; Wed, 23 Aug 2006 22:01:51 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NM1o3x023383 for ; Wed, 23 Aug 2006 22:01:50 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NM1o7u023380 for perforce@freebsd.org; Wed, 23 Aug 2006 22:01:50 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 22:01:50 GMT Message-Id: <200608232201.k7NM1o7u023380@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104866 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 22:01:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=104866 Change 104866 by gonzo@gonzo_hideout on 2006/08/23 22:01:15 o Replace NetBSD'ism with Affected files ... .. //depot/projects/mips2/src/lib/libc/mips/gen/fabs.S#2 edit .. //depot/projects/mips2/src/lib/libc/mips/gen/ldexp.S#2 edit .. //depot/projects/mips2/src/lib/libc/mips/gen/modf.S#2 edit Differences ... ==== //depot/projects/mips2/src/lib/libc/mips/gen/fabs.S#2 (text+ko) ==== @@ -32,7 +32,7 @@ * SUCH DAMAGE. */ -#include +#include #if defined(LIBC_SCCS) && !defined(lint) ASMSTR("from: @(#)fabs.s 8.1 (Berkeley) 2/16/94") ==== //depot/projects/mips2/src/lib/libc/mips/gen/ldexp.S#2 (text+ko) ==== @@ -32,7 +32,7 @@ * SUCH DAMAGE. */ -#include +#include #if defined(LIBC_SCCS) && !defined(lint) ASMSTR("from: @(#)ldexp.s 8.1 (Berkeley) 6/4/93") ==== //depot/projects/mips2/src/lib/libc/mips/gen/modf.S#2 (text+ko) ==== @@ -32,7 +32,7 @@ * SUCH DAMAGE. */ -#include +#include #if defined(LIBC_SCCS) && !defined(lint) ASMSTR("from: @(#)modf.s 8.1 (Berkeley) 6/4/93") From owner-p4-projects@FreeBSD.ORG Wed Aug 23 22:02:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CD28616A588; Wed, 23 Aug 2006 22:02:53 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A845A16A585 for ; Wed, 23 Aug 2006 22:02:53 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0D3A543D4C for ; Wed, 23 Aug 2006 22:02:53 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NM2q7g023664 for ; Wed, 23 Aug 2006 22:02:52 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NM2qZO023634 for perforce@freebsd.org; Wed, 23 Aug 2006 22:02:52 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 22:02:52 GMT Message-Id: <200608232202.k7NM2qZO023634@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104867 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 22:02:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=104867 Change 104867 by gonzo@gonzo_hideout on 2006/08/23 22:02:08 o More NetBSDisms fixed. Affected files ... .. //depot/projects/mips2/src/lib/libc/mips/SYS.h#2 edit Differences ... ==== //depot/projects/mips2/src/lib/libc/mips/SYS.h#2 (text+ko) ==== @@ -67,7 +67,8 @@ */ #include -#include + +#include "machine/asm.h" /* * If compiling for shared libs, Emit sysV ABI PIC segment pseudo-ops. From owner-p4-projects@FreeBSD.ORG Wed Aug 23 22:05:58 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A562316A505; Wed, 23 Aug 2006 22:05:58 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4A61916A500 for ; Wed, 23 Aug 2006 22:05:58 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D0BED43D45 for ; Wed, 23 Aug 2006 22:05:57 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NM5vm5025493 for ; Wed, 23 Aug 2006 22:05:57 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NM5vgg025490 for perforce@freebsd.org; Wed, 23 Aug 2006 22:05:57 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 22:05:57 GMT Message-Id: <200608232205.k7NM5vgg025490@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104869 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 22:05:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=104869 Change 104869 by gonzo@gonzo_hideout on 2006/08/23 22:05:39 o Ported setjmp from NetBSD. XXX: Hardcoded softfloat. Affected files ... .. //depot/projects/mips2/src/lib/libc/mips/gen/_setjmp.S#2 edit Differences ... ==== //depot/projects/mips2/src/lib/libc/mips/gen/_setjmp.S#2 (text+ko) ==== @@ -32,11 +32,8 @@ * SUCH DAMAGE. */ -#include -#include -#include -#include -#include /* XXX */ +#include +#include #if defined(LIBC_SCCS) && !defined(lint) ASMSTR("from: @(#)_setjmp.s 8.1 (Berkeley) 6/4/93") @@ -47,6 +44,8 @@ .abicalls #endif +#define SOFTFLOAT /* XXX */ + /* * C library -- _setjmp, _longjmp * @@ -67,20 +66,21 @@ #.set reorder #endif - REG_PROLOGUE - REG_LI v0, 0xACEDBADE # sigcontext magic number - REG_S ra, (2 * 4)(a0) # sc_pc = return address - REG_S v0, (_OFFSETOF_SC_REGS)(a0) # saved in sc_regs[0] - REG_S s0, (_R_S0 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_S s1, (_R_S1 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_S s2, (_R_S2 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_S s3, (_R_S3 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_S s4, (_R_S4 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_S s5, (_R_S5 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_S s6, (_R_S6 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_S s7, (_R_S7 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_S sp, (_R_SP * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_S s8, (_R_S8 * SZREG + _OFFSETOF_SC_REGS)(a0) + .set push + li v0, 0xACEDBADE # sigcontext magic number + sw ra, (2 * 4)(a0) # sc_pc = return address + sw v0, (_OFFSETOF_SC_REGS)(a0) # saved in sc_regs[0] + sw s0, (S0 * SZREG + _OFFSETOF_SC_REGS)(a0) + sw s1, (S1 * SZREG + _OFFSETOF_SC_REGS)(a0) + sw s2, (S2 * SZREG + _OFFSETOF_SC_REGS)(a0) + sw s3, (S3 * SZREG + _OFFSETOF_SC_REGS)(a0) + sw s4, (S4 * SZREG + _OFFSETOF_SC_REGS)(a0) + sw s5, (S5 * SZREG + _OFFSETOF_SC_REGS)(a0) + sw s6, (S6 * SZREG + _OFFSETOF_SC_REGS)(a0) + sw s7, (S7 * SZREG + _OFFSETOF_SC_REGS)(a0) + sw sp, (SP * SZREG + _OFFSETOF_SC_REGS)(a0) + sw s8, (S8 * SZREG + _OFFSETOF_SC_REGS)(a0) +#ifndef SOFTFLOAT cfc1 v0, $31 # too bad cant check if FP used swc1 $f20, (20 * 4 + _OFFSETOF_SC_FPREGS)(a0) swc1 $f21, (21 * 4 + _OFFSETOF_SC_FPREGS)(a0) @@ -95,7 +95,8 @@ swc1 $f30, (30 * 4 + _OFFSETOF_SC_FPREGS)(a0) swc1 $f31, (31 * 4 + _OFFSETOF_SC_FPREGS)(a0) sw v0, (32 * 4 + _OFFSETOF_SC_FPREGS)(a0) - REG_EPILOGUE +#endif + .set pop j ra move v0, zero END(_setjmp) @@ -109,23 +110,24 @@ .cprestore 16 .set noreorder #endif - REG_PROLOGUE - REG_L v0, (_OFFSETOF_SC_REGS)(a0) # get magic number - REG_L ra, (2 * 4)(a0) - REG_LI t0, 0xACEDBADE + .set push + lw v0, (_OFFSETOF_SC_REGS)(a0) # get magic number + lw ra, (2 * 4)(a0) + li t0, 0xACEDBADE bne v0, t0, botch # jump if error addu sp, sp, 32 # does not matter, sanity - REG_L s0, (_R_S0 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_L s1, (_R_S1 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_L s2, (_R_S2 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_L s3, (_R_S3 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_L s4, (_R_S4 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_L s5, (_R_S5 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_L s6, (_R_S6 * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_L s7, (_R_S7 * SZREG + _OFFSETOF_SC_REGS)(a0) + lw s0, (S0 * SZREG + _OFFSETOF_SC_REGS)(a0) + lw s1, (S1 * SZREG + _OFFSETOF_SC_REGS)(a0) + lw s2, (S2 * SZREG + _OFFSETOF_SC_REGS)(a0) + lw s3, (S3 * SZREG + _OFFSETOF_SC_REGS)(a0) + lw s4, (S4 * SZREG + _OFFSETOF_SC_REGS)(a0) + lw s5, (S5 * SZREG + _OFFSETOF_SC_REGS)(a0) + lw s6, (S6 * SZREG + _OFFSETOF_SC_REGS)(a0) + lw s7, (S7 * SZREG + _OFFSETOF_SC_REGS)(a0) lw v0, (32 * 4 + _OFFSETOF_SC_FPREGS)(a0) # get fpu status - REG_L sp, (_R_SP * SZREG + _OFFSETOF_SC_REGS)(a0) - REG_L s8, (_R_S8 * SZREG + _OFFSETOF_SC_REGS)(a0) + lw sp, (SP * SZREG + _OFFSETOF_SC_REGS)(a0) + lw s8, (S8 * SZREG + _OFFSETOF_SC_REGS)(a0) +#ifndef SOFTFLOAT ctc1 v0, $31 lwc1 $f20, (20 * 4 + _OFFSETOF_SC_FPREGS)(a0) lwc1 $f21, (21 * 4 + _OFFSETOF_SC_FPREGS)(a0) @@ -139,10 +141,10 @@ lwc1 $f29, (29 * 4 + _OFFSETOF_SC_FPREGS)(a0) lwc1 $f30, (30 * 4 + _OFFSETOF_SC_FPREGS)(a0) lwc1 $f31, (31 * 4 + _OFFSETOF_SC_FPREGS)(a0) - +#endif j ra move v0, a1 - REG_EPILOGUE + .set pop botch: jal _C_LABEL(longjmperror) nop From owner-p4-projects@FreeBSD.ORG Wed Aug 23 22:08:05 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2D96216A4E2; Wed, 23 Aug 2006 22:08:05 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 08F5F16A4E0 for ; Wed, 23 Aug 2006 22:08:05 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0D83E43D5F for ; Wed, 23 Aug 2006 22:08:00 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NM80vw025711 for ; Wed, 23 Aug 2006 22:08:00 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NM80bm025706 for perforce@freebsd.org; Wed, 23 Aug 2006 22:08:00 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 22:08:00 GMT Message-Id: <200608232208.k7NM80bm025706@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104870 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 22:08:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=104870 Change 104870 by gonzo@gonzo_hideout on 2006/08/23 22:07:30 o replace amd64 bits with MIPS stubs. Affected files ... .. //depot/projects/mips2/src/lib/libpthread/arch/mips/mips/context.S#2 edit Differences ... ==== //depot/projects/mips2/src/lib/libpthread/arch/mips/mips/context.S#2 (text+ko) ==== @@ -38,17 +38,9 @@ .weak _C_LABEL(_thr_setcontext) .set _C_LABEL(_thr_setcontext), _C_LABEL(__thr_setcontext) -ENTRY(__thr_setcontext) +LEAF(__thr_setcontext) /* Check for NULL pointer. */ - cmp r0, #0 - moveq r0, #-1 - moveq pc, lr - cmp r2, #0 - strne r1, [r2] - ldr r1, [r0, #(16 * 4)] /* CPSR */ - msr cpsr, r1 - ldmia r0, {r0-r15} - mov pc, lr + j ra /* XXX: FP bits ? */ /* @@ -60,20 +52,6 @@ .weak _C_LABEL(_thr_getcontext) .set _C_LABEL(_thr_getcontext), _C_LABEL(__thr_getcontext) -ENTRY(__thr_getcontext) +LEAF(__thr_getcontext) /* Check for NULL pointer. */ - cmp r0, #0 - moveq r0, #-1 - moveq pc, lr - stmia r0, {r1-r14} - mov r1, #1 - str r1, [r0] /* Return 1 from setcontext */ - str lr, [r0, #(15 * 4)] /* PC */ - mrs r1, cpsr - str r1, [r0, #(16 * 4)] /* CPSR */ - mov r0, #0 /* Return 0. */ - mov pc, lr - -ENTRY(_arm_enter_uts) - add sp, r2, r3 /* Stack addr + size. */ - mov pc, r1 + j ra From owner-p4-projects@FreeBSD.ORG Wed Aug 23 22:17:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1E6FA16A4E1; Wed, 23 Aug 2006 22:17:20 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ED59B16A4DF for ; Wed, 23 Aug 2006 22:17:19 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5099943D77 for ; Wed, 23 Aug 2006 22:17:12 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NMHC4i026165 for ; Wed, 23 Aug 2006 22:17:12 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NMHCeJ026162 for perforce@freebsd.org; Wed, 23 Aug 2006 22:17:12 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 22:17:12 GMT Message-Id: <200608232217.k7NMHCeJ026162@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104871 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 22:17:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=104871 Change 104871 by gonzo@gonzo_hideout on 2006/08/23 22:16:12 o Replace "arm" string with "mips". TODO: check if it's enough. Affected files ... .. //depot/projects/mips2/src/lib/libpthread/arch/mips/include/pthread_md.h#2 edit .. //depot/projects/mips2/src/lib/libpthread/arch/mips/mips/pthread_md.c#2 edit Differences ... ==== //depot/projects/mips2/src/lib/libpthread/arch/mips/include/pthread_md.h#2 (text+ko) ==== @@ -62,7 +62,7 @@ * XXX - Both static and dynamic allocation of any of these structures * will result in a valid, well-aligned thread pointer??? */ -struct arm_tp { +struct mips_tp { struct tdv *tp_tdv; /* dynamic TLS */ }; @@ -71,7 +71,7 @@ struct kcb *tcb_curkcb; uint32_t tcb_isfake; struct kse_thr_mailbox tcb_tmbx; /* needs 32-byte alignment */ - struct arm_tp tcb_tp; + struct mips_tp tcb_tp; }; struct kcb { @@ -81,8 +81,8 @@ struct kse *kcb_kse; }; -extern struct arm_tp **arm_tp; -#define _tp (*arm_tp) +extern struct mips_tp **mips_tp; +#define _tp (*mips_tp) #define _tcb ((struct tcb*)((char*)(_tp) - offsetof(struct tcb, tcb_tp))) @@ -94,13 +94,16 @@ struct kcb *_kcb_ctor(struct kse *kse); void _kcb_dtor(struct kcb *); +/* XXXMIPS: Should we do this using ll/sc? */ static __inline uint32_t __kcb_swp(uint32_t val, void *ptr) { - - __asm __volatile("swp %0, %1, [%2]" - : "=r" (val) : "r" (val) , "r" (ptr) : "memory"); - return (val); + register_t tmp; + __asm __volatile( + "lw %1, (%2)\n\t" \ + "sw (%2), %0\n\t" \ + : "=r" (val), "=r" (tmp) : "r" (val) , "r" (ptr) : "memory"); + return (tmp); } /* Called from the KSE to set its private data. */ ==== //depot/projects/mips2/src/lib/libpthread/arch/mips/mips/pthread_md.c#2 (text+ko) ==== @@ -41,7 +41,7 @@ #include "pthread_md.h" -struct arm_tp **arm_tp = (struct arm_tp **)ARM_TP_ADDRESS; +/* struct mips_tp **mips_tp = (struct mips_tp **)MIPS_TP_ADDRESS; */ struct tcb * _tcb_ctor(struct pthread *thread, int initial) From owner-p4-projects@FreeBSD.ORG Wed Aug 23 22:19:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 856CA16AA41; Wed, 23 Aug 2006 22:19:17 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 48BD516AA0A for ; Wed, 23 Aug 2006 22:19:17 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C0FDC43D70 for ; Wed, 23 Aug 2006 22:19:16 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7NMJGwE026247 for ; Wed, 23 Aug 2006 22:19:16 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7NMJGcm026244 for perforce@freebsd.org; Wed, 23 Aug 2006 22:19:16 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 23 Aug 2006 22:19:16 GMT Message-Id: <200608232219.k7NMJGcm026244@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104873 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Aug 2006 22:19:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=104873 Change 104873 by gonzo@gonzo_hideout on 2006/08/23 22:18:15 o Add _setjmp.S to libstand. Affected files ... .. //depot/projects/mips2/src/lib/libstand/mips/_setjmp.S#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Aug 24 00:53:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 94F3216A4DF; Thu, 24 Aug 2006 00:53:49 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5861E16A4DA for ; Thu, 24 Aug 2006 00:53:49 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BE15143D45 for ; Thu, 24 Aug 2006 00:53:48 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7O0rctx044386 for ; Thu, 24 Aug 2006 00:53:38 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7O0rbmA044383 for perforce@freebsd.org; Thu, 24 Aug 2006 00:53:37 GMT (envelope-from imp@freebsd.org) Date: Thu, 24 Aug 2006 00:53:37 GMT Message-Id: <200608240053.k7O0rbmA044383@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104879 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 00:53:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=104879 Change 104879 by imp@imp_bugs on 2006/08/24 00:53:32 Try to make it possible to create a /usr/${MACHINE_ARCH} that contains the tools necessary for cross building. This has a lot of rough edges and will likely undergo a lot of refinement between now and when it is committed. # Not sure I should do this in this tree, but there's no reason # not to, since there's no harm unless you use it. Affected files ... .. //depot/projects/arm/src/Makefile#2 edit .. //depot/projects/arm/src/Makefile.inc1#3 edit Differences ... ==== //depot/projects/arm/src/Makefile#2 (text+ko) ==== @@ -79,7 +79,7 @@ obj objlink regress rerelease showconfig tags toolchain update \ _worldtmp _legacy _bootstrap-tools _cleanobj _obj \ _build-tools _cross-tools _includes _libraries _depend \ - build32 distribute32 install32 + build32 distribute32 install32 cross-devel cross-devel-install TGTS+= ${SUBDIR_TARGETS} BITGTS= files includes @@ -156,7 +156,7 @@ # ${TGTS}: - ${_+_}@cd ${.CURDIR}; \ + ${_+_}cd ${.CURDIR}; \ ${_MAKE} ${.TARGET} # Set a reasonable default ==== //depot/projects/arm/src/Makefile.inc1#3 (text+ko) ==== @@ -1038,6 +1038,7 @@ .if exists(${.CURDIR}/${_lib}) ${_+_}@${ECHODIR} "===> ${_lib} (depend,all,install)"; \ cd ${.CURDIR}/${_lib}; \ + ${MAKE} DIRPRFX=${_lib}/ obj; \ ${MAKE} DIRPRFX=${_lib}/ depend; \ ${MAKE} DIRPRFX=${_lib}/ all; \ ${MAKE} DIRPRFX=${_lib}/ install @@ -1050,6 +1051,7 @@ lib/libpam__L: .PHONY ${_+_}@${ECHODIR} "===> lib/libpam (depend,all,install)"; \ cd ${.CURDIR}/lib/libpam; \ + ${MAKE} DIRPRFX=lib/libpam/ obj; \ ${MAKE} DIRPRFX=lib/libpam/ depend; \ ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET all; \ ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET install @@ -1202,3 +1204,49 @@ # showconfig: @${MAKE} -n -f bsd.own.mk -V dummy -dg1 | grep ^MK_ | sort + + +############### + +NOFUN=-DNO_FSCHG -DWITHOUT_HTML -DWITHOUT_INFO -DNO_LINT \ + -DWITHOUT_MAN -DWITHOUT_NLS -DWITHOUT_PROFILE + +CDENV=MAKEOBJDIRPREFIX=${MAKEOBJDIRPREFIX}/${XDEV_ARCH} \ + TOOLS_PREFIX=/usr/${XDEV_ARCH} TARGET_ARCH=${XDEV_ARCH} \ + MACHINE_ARCH=${XDEV_ARCH} + +CDMAKE=${CDENV} ${MAKE} ${NOFUN} +CD2MAKE=${CDENV} PATH=/usr/${XDEV_ARCH}/usr/bin:${PATH} ${MAKE} ${NOFUN} + + +cross-devel: +.for _tool in \ + gnu/usr.bin/binutils \ + gnu/usr.bin/cc + ${_+_}@${ECHODIR} "===> xdev.${XDEV_ARCH} ${_tool} (obj,depend,all)"; \ + cd ${.CURDIR}/${_tool}; \ + ${CDMAKE} DIRPRFX=${_tool}/ obj; \ + ${CDMAKE} DIRPRFX=${_tool}/ depend; \ + ${CDMAKE} DIRPRFX=${_tool}/ all +.endfor + +_cdi-mtree: + ${_+_}@${ECHODIR} "mtree populating /usr/${XDEV_ARCH}" + mkdir -p /usr/${XDEV_ARCH} + mtree -deU -f ${.CURDIR}/etc/mtree/BSD.root.dist \ + -p /usr/${XDEV_ARCH} >/dev/null + mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ + -p /usr/${XDEV_ARCH}/usr >/dev/null + mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ + -p /usr/${XDEV_ARCH}/usr/include >/dev/null + +cross-devel-install: _cdi-mtree +.for _tool in \ + gnu/usr.bin/binutils \ + gnu/usr.bin/cc + ${_+_}@${ECHODIR} "===> xdev.${XDEV_ARCH} ${_tool} (install)"; \ + cd ${.CURDIR}/${_tool}; \ + ${CDMAKE} DIRPRFX=${_tool}/ install DESTDIR=${DESTDIR}/usr/${XDEV_ARCH} +.endfor + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 par-includes DESTDIR=${DESTDIR}/usr/${XDEV_ARCH} + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 libraries DESTDIR=${DESTDIR}/usr/${XDEV_ARCH} From owner-p4-projects@FreeBSD.ORG Thu Aug 24 03:08:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C898E16A4E5; Thu, 24 Aug 2006 03:08:31 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7D09716A4E0 for ; Thu, 24 Aug 2006 03:08:31 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4541243D67 for ; Thu, 24 Aug 2006 03:08:29 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7O38TnY056348 for ; Thu, 24 Aug 2006 03:08:29 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7O38TYm056345 for perforce@freebsd.org; Thu, 24 Aug 2006 03:08:29 GMT (envelope-from imp@freebsd.org) Date: Thu, 24 Aug 2006 03:08:29 GMT Message-Id: <200608240308.k7O38TYm056345@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104882 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 03:08:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=104882 Change 104882 by imp@imp_paco-paco on 2006/08/24 03:07:38 Crap. I frogot that $MACHINE is how we install headers, which is why this was failing. That made me realize that I needed to install into /usr/$MACHINE not /usr/$MACHINE_ARCH because there are different kernel API/ABIs. # However, I need to be careful here, because I think arm # may break the rules that every MACHINE implies a unique # MACHINE_ARCH... I think we may have to fix that... Damn # endianness :-( Affected files ... .. //depot/projects/arm/src/Makefile.inc1#4 edit Differences ... ==== //depot/projects/arm/src/Makefile.inc1#4 (text+ko) ==== @@ -1207,23 +1207,25 @@ ############### +.if defined(XDEV) && defined(XDEV_ARCH) NOFUN=-DNO_FSCHG -DWITHOUT_HTML -DWITHOUT_INFO -DNO_LINT \ -DWITHOUT_MAN -DWITHOUT_NLS -DWITHOUT_PROFILE -CDENV=MAKEOBJDIRPREFIX=${MAKEOBJDIRPREFIX}/${XDEV_ARCH} \ - TOOLS_PREFIX=/usr/${XDEV_ARCH} TARGET_ARCH=${XDEV_ARCH} \ +CDENV=MAKEOBJDIRPREFIX=${MAKEOBJDIRPREFIX}/${XDEV} \ + TOOLS_PREFIX=/usr/${XDEV_ARCH} TARGET=${XDEV} \ + TARGET_ARCH=${XDEV_ARCH} \ + MACHINE=${XDEV} \ MACHINE_ARCH=${XDEV_ARCH} CDMAKE=${CDENV} ${MAKE} ${NOFUN} -CD2MAKE=${CDENV} PATH=/usr/${XDEV_ARCH}/usr/bin:${PATH} ${MAKE} ${NOFUN} - +CD2MAKE=${CDENV} PATH=/usr/${XDEV}/usr/bin:${PATH} ${MAKE} ${NOFUN} cross-devel: .for _tool in \ gnu/usr.bin/binutils \ gnu/usr.bin/cc - ${_+_}@${ECHODIR} "===> xdev.${XDEV_ARCH} ${_tool} (obj,depend,all)"; \ + ${_+_}@${ECHODIR} "===> xdev ${_tool} (obj,depend,all)"; \ cd ${.CURDIR}/${_tool}; \ ${CDMAKE} DIRPRFX=${_tool}/ obj; \ ${CDMAKE} DIRPRFX=${_tool}/ depend; \ @@ -1231,22 +1233,22 @@ .endfor _cdi-mtree: - ${_+_}@${ECHODIR} "mtree populating /usr/${XDEV_ARCH}" - mkdir -p /usr/${XDEV_ARCH} + ${_+_}@${ECHODIR} "mtree populating /usr/${XDEV}" + mkdir -p /usr/${XDEV} mtree -deU -f ${.CURDIR}/etc/mtree/BSD.root.dist \ - -p /usr/${XDEV_ARCH} >/dev/null + -p /usr/${XDEV} >/dev/null mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ - -p /usr/${XDEV_ARCH}/usr >/dev/null + -p /usr/${XDEV}/usr >/dev/null mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ - -p /usr/${XDEV_ARCH}/usr/include >/dev/null + -p /usr/${XDEV}/usr/include >/dev/null cross-devel-install: _cdi-mtree .for _tool in \ gnu/usr.bin/binutils \ gnu/usr.bin/cc - ${_+_}@${ECHODIR} "===> xdev.${XDEV_ARCH} ${_tool} (install)"; \ + ${_+_}@${ECHODIR} "===> xdev ${_tool} (install)"; \ cd ${.CURDIR}/${_tool}; \ - ${CDMAKE} DIRPRFX=${_tool}/ install DESTDIR=${DESTDIR}/usr/${XDEV_ARCH} + ${CDMAKE} DIRPRFX=${_tool}/ install DESTDIR=${DESTDIR}/usr/${XDEV} .endfor - ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 par-includes DESTDIR=${DESTDIR}/usr/${XDEV_ARCH} - ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 libraries DESTDIR=${DESTDIR}/usr/${XDEV_ARCH} + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 par-includes DESTDIR=${DESTDIR}/usr/${XDEV} + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 libraries DESTDIR=${DESTDIR}/usr/${XDEV} From owner-p4-projects@FreeBSD.ORG Thu Aug 24 10:57:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A737B16A4E5; Thu, 24 Aug 2006 10:57:38 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 69A5816A4E1 for ; Thu, 24 Aug 2006 10:57:38 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CAE4C43D49 for ; Thu, 24 Aug 2006 10:57:37 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OAvb5P060486 for ; Thu, 24 Aug 2006 10:57:37 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OAvbqv060483 for perforce@freebsd.org; Thu, 24 Aug 2006 10:57:37 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Aug 2006 10:57:37 GMT Message-Id: <200608241057.k7OAvbqv060483@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104912 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 10:57:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=104912 Change 104912 by rwatson@rwatson_sesame on 2006/08/24 10:56:48 Merge OpenBSM 1.0a9 features from TrustedBSD OpenBSM branch to TrustedBSD audit3 branch: - Constant renaming, which may require further work in the audit3 branch to catch up with. - auditfilterd API updates. Affected files ... .. //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#10 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/README#15 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/VERSION#11 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.c#4 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.h#4 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#3 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_filter.h#4 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_internal.h#9 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#14 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#15 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/configure#9 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#10 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_audit.c#13 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#17 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#20 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#9 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#3 integrate Differences ... ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#10 (text+ko) ==== @@ -1,3 +1,14 @@ +OpenBSM 1.0 alpha 9 + +- Rename many OpenBSM-specific constants and API elements containing the + strings "BSM" and "bsm" to "AUDIT" and "audit", observing that this is true + for almost all existing constants and APIs. +- Instead of passing a per-instance cookie directly into all audit filter + APIs, pass in the audit filter daemon state pointer, which is then used by + the module using an audit_filter_{get,set}cookie() API. This will allow + future service APIs provided by the filter daemon to maintain their own + state -- for example, per-module preselection state. + OpenBSM 1.0 alpha 8 - Correct typo in definition of AUR_INT. @@ -192,4 +203,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#9 $ +$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#10 $ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/README#15 (text+ko) ==== @@ -75,6 +75,7 @@ Christian Peron Martin Fong Pawel Worach + Martin Englund In addition, Coverity, Inc.'s Prevent(tm) static analysis tool and Gimpel Software's FlexeLint tool were used to identify a number of bugs in the @@ -96,4 +97,4 @@ http://www.TrustedBSD.org/ -$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/README#14 $ +$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/README#15 $ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/VERSION#11 (text+ko) ==== @@ -1,1 +1,1 @@ -OPENBSM_1_0_ALPHA_8 +OPENBSM_1_0_ALPHA_9 ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.c#4 (text+ko) ==== @@ -25,7 +25,16 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.c#3 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.c#4 $ + */ + +/* + * Main file for the audit filter daemon, which presents audit records to a + * set of run-time registered loadable modules. This is the main event loop + * of the daemon, which handles starting up, waiting for records, and + * presenting records to configured modules. auditfilterd_conf.c handles the + * reading and management of the configuration, module list and module state, + * etc. */ #include @@ -106,13 +115,13 @@ * Present raw BSM to a set of registered and interested filters. */ static void -present_bsmrecord(struct timespec *ts, u_char *data, u_int len) +present_rawrecord(struct timespec *ts, u_char *data, u_int len) { struct auditfilter_module *am; TAILQ_FOREACH(am, &filter_list, am_list) { - if (am->am_bsmrecord != NULL) - (am->am_bsmrecord)(am->am_instance, ts, data, len); + if (am->am_rawrecord != NULL) + (am->am_rawrecord)(am, ts, data, len); } } @@ -140,8 +149,7 @@ TAILQ_FOREACH(am, &filter_list, am_list) { if (am->am_record != NULL) - (am->am_record)(am->am_instance, ts, tokencount, - tokens); + (am->am_record)(am, ts, tokencount, tokens); } } @@ -191,7 +199,7 @@ continue; if (clock_gettime(CLOCK_REALTIME, &ts) < 0) err(-1, "clock_gettime"); - present_bsmrecord(&ts, buf, reclen); + present_rawrecord(&ts, buf, reclen); present_tokens(&ts, buf, reclen); free(buf); } @@ -241,7 +249,7 @@ continue; if (clock_gettime(CLOCK_REALTIME, &ts) < 0) err(-1, "clock_gettime"); - present_bsmrecord(&ts, record, reclen); + present_rawrecord(&ts, record, reclen); present_tokens(&ts, record, reclen); } } ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.h#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.h#3 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.h#4 $ */ #define AUDITFILTERD_CONFFILE "/etc/security/audit_filter" @@ -53,11 +53,11 @@ /* * Fields provided by or extracted from the module. */ - void *am_instance; + void *am_cookie; audit_filter_attach_t am_attach; audit_filter_reinit_t am_reinit; audit_filter_record_t am_record; - audit_filter_bsmrecord_t am_bsmrecord; + audit_filter_rawrecord_t am_rawrecord; audit_filter_detach_t am_detach; /* ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#2 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#3 $ */ /* @@ -38,6 +38,12 @@ * Modules are in one of two states: attached, or detached. If attach fails, * detach is not called because it was not attached. If a module is attached * and a call to its reinit method fails, we will detach it. + * + * Modules are passed a (void *) reference to their configuration state so + * that they may pass this into any common APIs we provide which may rely on + * that state. Currently, the only such API is the cookie API, which allows + * per-instance state to be maintained by a module. In the future, this will + * also be used to support per-instance preselection state. */ #include @@ -105,8 +111,8 @@ { if (am->am_detach != NULL) - am->am_detach(am->am_instance); - am->am_instance = NULL; + am->am_detach(am); + am->am_cookie = NULL; (void)dlclose(am->am_dlhandle); am->am_dlhandle = NULL; } @@ -149,21 +155,22 @@ am->am_attach = dlsym(am->am_dlhandle, AUDIT_FILTER_ATTACH_STRING); am->am_reinit = dlsym(am->am_dlhandle, AUDIT_FILTER_REINIT_STRING); am->am_record = dlsym(am->am_dlhandle, AUDIT_FILTER_RECORD_STRING); - am->am_bsmrecord = dlsym(am->am_dlhandle, - AUDIT_FILTER_BSMRECORD_STRING); + am->am_rawrecord = dlsym(am->am_dlhandle, + AUDIT_FILTER_RAWRECORD_STRING); am->am_detach = dlsym(am->am_dlhandle, AUDIT_FILTER_DETACH_STRING); if (am->am_attach != NULL) { - if (am->am_attach(&am->am_instance, am->am_argc, am->am_argv) + if (am->am_attach(am, am->am_argc, am->am_argv) != AUDIT_FILTER_SUCCESS) { warnx("auditfilter_module_attach: %s: failed", am->am_modulename); dlclose(am->am_dlhandle); am->am_dlhandle = NULL; + am->am_cookie = NULL; am->am_attach = NULL; am->am_reinit = NULL; am->am_record = NULL; - am->am_bsmrecord = NULL; + am->am_rawrecord = NULL; am->am_detach = NULL; return (-1); } @@ -184,7 +191,7 @@ if (am->am_reinit == NULL) return (0); - if (am->am_reinit(&am->am_instance, am->am_argc, am->am_argv) != + if (am->am_reinit(am, am->am_argc, am->am_argv) != AUDIT_FILTER_SUCCESS) { warnx("auditfilter_module_reinit: %s: failed", am->am_modulename); @@ -483,3 +490,24 @@ auditfilter_module_list_detach(&filter_list); auditfilter_module_list_free(&filter_list); } + +/* + * APIs to allow modules to query and set their per-instance cookie. + */ +void +audit_filter_getcookie(void *instance, void **cookie) +{ + struct auditfilter_module *am; + + am = (struct auditfilter_module *)instance; + *cookie = am->am_cookie; +} + +void +audit_filter_setcookie(void *instance, void *cookie) +{ + struct auditfilter_module *am; + + am = (struct auditfilter_module *)instance; + am->am_cookie = cookie; +} ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_filter.h#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_filter.h#3 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_filter.h#4 $ */ #ifndef _BSM_AUDIT_FILTER_H_ @@ -38,22 +38,28 @@ * audit_filter_reinit_t - arguments to module have changed * audit_filter_record_t - present parsed record to filter module, with * receipt time - * audit_filter_bsmrecord_t - present bsm format record to filter module, + * audit_filter_rawrecord_t - present BSM format record to filter module, * with receipt time * audit_filter_destach_t - filter module is being detached * * There may be many instances of the same filter, identified by the instance * void pointer maintained by the filter instance. */ -typedef int (*audit_filter_attach_t)(void **instance, int argc, char *argv[]); +typedef int (*audit_filter_attach_t)(void *instance, int argc, char *argv[]); typedef int (*audit_filter_reinit_t)(void *instance, int argc, char *argv[]); typedef void (*audit_filter_record_t)(void *instance, struct timespec *ts, int token_count, const tokenstr_t tok[]); -typedef void (*audit_filter_bsmrecord_t)(void *instance, struct timespec *ts, +typedef void (*audit_filter_rawrecord_t)(void *instance, struct timespec *ts, void *data, u_int len); typedef void (*audit_filter_detach_t)(void *instance); /* + * APIs that may be called by audit filters. + */ +void audit_filter_getcookie(void *instance, void **cookie); +void audit_filter_setcookie(void *instance, void *cookie); + +/* * Values to be returned by audit_filter_init_t. */ #define AUDIT_FILTER_SUCCESS (0) @@ -66,12 +72,12 @@ #define AUDIT_FILTER_ATTACH audit_filter_attach #define AUDIT_FILTER_REINIT audit_filter_reinit #define AUDIT_FILTER_RECORD audit_filter_record -#define AUDIT_FILTER_BSMRECORD audit_filter_bsmrecord +#define AUDIT_FILTER_RAWRECORD audit_filter_rawrecord #define AUDIT_FILTER_DETACH audit_filter_detach #define AUDIT_FILTER_ATTACH_STRING "audit_filter_attach" #define AUDIT_FILTER_REINIT_STRING "audit_filter_reinit" #define AUDIT_FILTER_RECORD_STRING "audit_filter_record" -#define AUDIT_FILTER_BSMRECORD_STRING "audit_filter_bsmrecord" +#define AUDIT_FILTER_RAWRECORD_STRING "audit_filter_rawrecord" #define AUDIT_FILTER_DETACH_STRING "audit_filter_detach" #endif /* !_BSM_AUDIT_FILTER_H_ */ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_internal.h#9 (text+ko) ==== @@ -34,7 +34,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_internal.h#8 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_internal.h#9 $ */ #ifndef _AUDIT_INTERNAL_H @@ -68,15 +68,15 @@ typedef struct au_record au_record_t; -/* We could determined the header and trailer sizes by - * defining appropriate structures. We hold off that approach - * till we have a consistant way of using structures for all tokens. - * This is not straightforward since these token structures may - * contain pointers of whose contents we dont know the size - * (e.g text tokens) +/* + * We could determined the header and trailer sizes by defining appropriate + * structures. We hold off that approach until we have a consistant way of + * using structures for all tokens. This is not straightforward since these + * token structures may contain pointers of whose contents we dont know the + * size (e.g text tokens). */ -#define BSM_HEADER_SIZE 18 -#define BSM_TRAILER_SIZE 7 +#define AUDIT_HEADER_SIZE 18 +#define AUDIT_TRAILER_SIZE 7 /* * BSM token streams store fields in big endian byte order, so as to be ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#14 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#13 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#14 $ */ #ifndef _BSM_AUDIT_RECORD_H_ @@ -199,7 +199,7 @@ #define PAD_NOTATTR 0x4000 /* nonattributable event */ #define PAD_FAILURE 0x8000 /* fail audit event */ -#define BSM_MAX_GROUPS 16 +#define AUDIT_MAX_GROUPS 16 /* * A number of BSM versions are floating around and defined. Here are @@ -207,11 +207,11 @@ * Solaris BSM version, but has a separate version number in order to * identify a potentially different event identifier name space. */ -#define BSM_HEADER_VERSION_OLDDARWIN 1 /* In retrospect, a mistake. */ -#define BSM_HEADER_VERSION_SOLARIS 2 -#define BSM_HEADER_VERSION_TSOL25 3 -#define BSM_HEADER_VERSION_TSOL 4 -#define BSM_HEADER_VERSION_OPENBSM 10 +#define AUDIT_HEADER_VERSION_OLDDARWIN 1 /* In retrospect, a mistake. */ +#define AUDIT_HEADER_VERSION_SOLARIS 2 +#define AUDIT_HEADER_VERSION_TSOL25 3 +#define AUDIT_HEADER_VERSION_TSOL 4 +#define AUDIT_HEADER_VERSION_OPENBSM 10 /* * BSM define is AUT_TRAILER_MAGIC; Apple BSM define is TRAILER_PAD_MAGIC; we ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#15 (text+ko) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#14 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#15 $ */ #ifndef _LIBBSM_H_ @@ -37,8 +37,8 @@ * solely to allow OpenSSH to compile; Darwin/Apple code should not use them. */ -#define BSM_MAX_ARGS 10 -#define BSM_MAX_ENV 10 +#define AUDIT_MAX_ARGS 10 +#define AUDIT_MAX_ENV 10 #include #include @@ -218,7 +218,7 @@ */ typedef struct { u_int32_t count; - char *text[BSM_MAX_ARGS]; + char *text[AUDIT_MAX_ARGS]; } au_execarg_t; /* @@ -227,7 +227,7 @@ */ typedef struct { u_int32_t count; - char *text[BSM_MAX_ENV]; + char *text[AUDIT_MAX_ENV]; } au_execenv_t; /* @@ -259,7 +259,7 @@ */ typedef struct { u_int16_t no; - u_int32_t list[BSM_MAX_GROUPS]; + u_int32_t list[AUDIT_MAX_GROUPS]; } au_groups_t; /* ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/configure#9 (xtext) ==== @@ -1,7 +1,7 @@ #! /bin/sh -# From configure.ac P4: //depot/projects/trustedbsd/openbsm/configure.ac#26 . +# From configure.ac P4: //depot/projects/trustedbsd/openbsm/configure.ac#27 . # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59 for OpenBSM 1.0a8. +# Generated by GNU Autoconf 2.59 for OpenBSM 1.0a9. # # Report bugs to . # @@ -424,8 +424,8 @@ # Identity of this package. PACKAGE_NAME='OpenBSM' PACKAGE_TARNAME='openbsm' -PACKAGE_VERSION='1.0a8' -PACKAGE_STRING='OpenBSM 1.0a8' +PACKAGE_VERSION='1.0a9' +PACKAGE_STRING='OpenBSM 1.0a9' PACKAGE_BUGREPORT='trustedbsd-audit@TrustesdBSD.org' ac_unique_file="bin/auditreduce/auditreduce.c" @@ -955,7 +955,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures OpenBSM 1.0a8 to adapt to many kinds of systems. +\`configure' configures OpenBSM 1.0a9 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1021,7 +1021,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of OpenBSM 1.0a8:";; + short | recursive ) echo "Configuration of OpenBSM 1.0a9:";; esac cat <<\_ACEOF @@ -1162,7 +1162,7 @@ test -n "$ac_init_help" && exit 0 if $ac_init_version; then cat <<\_ACEOF -OpenBSM configure 1.0a8 +OpenBSM configure 1.0a9 generated by GNU Autoconf 2.59 Copyright (C) 2003 Free Software Foundation, Inc. @@ -1176,7 +1176,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by OpenBSM $as_me 1.0a8, which was +It was created by OpenBSM $as_me 1.0a9, which was generated by GNU Autoconf 2.59. Invocation command line was $ $0 $@ @@ -19278,7 +19278,7 @@ # Define the identity of the package. PACKAGE=OpenBSM - VERSION=1.0a8 + VERSION=1.0a9 cat >>confdefs.h <<_ACEOF @@ -23478,7 +23478,7 @@ } >&5 cat >&5 <<_CSEOF -This file was extended by OpenBSM $as_me 1.0a8, which was +This file was extended by OpenBSM $as_me 1.0a9, which was generated by GNU Autoconf 2.59. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -23541,7 +23541,7 @@ cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ -OpenBSM config.status 1.0a8 +OpenBSM config.status 1.0a9 configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#10 (text+ko) ==== @@ -2,8 +2,8 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.59) -AC_INIT([OpenBSM], [1.0a8], [trustedbsd-audit@TrustesdBSD.org],[openbsm]) -AC_REVISION([$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#9 $]) +AC_INIT([OpenBSM], [1.0a9], [trustedbsd-audit@TrustesdBSD.org],[openbsm]) +AC_REVISION([$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#10 $]) AC_CONFIG_SRCDIR([bin/auditreduce/auditreduce.c]) AC_CONFIG_AUX_DIR(config) AC_CONFIG_HEADER([config/config.h]) ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_audit.c#13 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_audit.c#12 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_audit.c#13 $ */ #include @@ -54,14 +54,14 @@ static au_record_t *open_desc_table[MAX_AUDIT_RECORDS]; /* The current number of active record descriptors */ -static int bsm_rec_count = 0; +static int audit_rec_count = 0; /* * Records that can be recycled are maintained in the list given below. The * maximum number of elements that can be present in this list is bounded by * MAX_AUDIT_RECORDS. Memory allocated for these records are never freed. */ -static LIST_HEAD(, au_record) bsm_free_q; +static LIST_HEAD(, au_record) audit_free_q; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; @@ -93,15 +93,15 @@ pthread_mutex_lock(&mutex); - if (bsm_rec_count == 0) - LIST_INIT(&bsm_free_q); + if (audit_rec_count == 0) + LIST_INIT(&audit_free_q); /* * Find an unused descriptor, remove it from the free list, mark as * used. */ - if (!LIST_EMPTY(&bsm_free_q)) { - rec = LIST_FIRST(&bsm_free_q); + if (!LIST_EMPTY(&audit_free_q)) { + rec = LIST_FIRST(&audit_free_q); rec->used = 1; LIST_REMOVE(rec, au_rec_q); } @@ -125,7 +125,7 @@ pthread_mutex_lock(&mutex); - if (bsm_rec_count == MAX_AUDIT_RECORDS) { + if (audit_rec_count == MAX_AUDIT_RECORDS) { pthread_mutex_unlock(&mutex); free(rec->data); free(rec); @@ -134,9 +134,9 @@ errno = ENOMEM; return (-1); } - rec->desc = bsm_rec_count; - open_desc_table[bsm_rec_count] = rec; - bsm_rec_count++; + rec->desc = audit_rec_count; + open_desc_table[audit_rec_count] = rec; + audit_rec_count++; pthread_mutex_unlock(&mutex); @@ -174,7 +174,7 @@ return (-1); /* Invalid descriptor */ } - if (rec->len + tok->len + BSM_TRAILER_SIZE > MAX_AUDIT_RECORD_SIZE) { + if (rec->len + tok->len + AUDIT_TRAILER_SIZE > MAX_AUDIT_RECORD_SIZE) { errno = ENOMEM; return (-1); } @@ -208,7 +208,7 @@ u_char *dptr; int error; - tot_rec_size = rec->len + BSM_HEADER_SIZE + BSM_TRAILER_SIZE; + tot_rec_size = rec->len + AUDIT_HEADER_SIZE + AUDIT_TRAILER_SIZE; header = au_to_header32(tot_rec_size, event, 0); if (header == NULL) return (-1); @@ -257,7 +257,7 @@ pthread_mutex_lock(&mutex); /* Add the record to the freelist tail */ - LIST_INSERT_HEAD(&bsm_free_q, rec, au_rec_q); + LIST_INSERT_HEAD(&audit_free_q, rec, au_rec_q); pthread_mutex_unlock(&mutex); } @@ -285,7 +285,7 @@ goto cleanup; } - tot_rec_size = rec->len + BSM_HEADER_SIZE + BSM_TRAILER_SIZE; + tot_rec_size = rec->len + AUDIT_HEADER_SIZE + AUDIT_TRAILER_SIZE; if (tot_rec_size > MAX_AUDIT_RECORD_SIZE) { /* @@ -335,7 +335,7 @@ } retval = 0; - tot_rec_size = rec->len + BSM_HEADER_SIZE + BSM_TRAILER_SIZE; + tot_rec_size = rec->len + AUDIT_HEADER_SIZE + AUDIT_TRAILER_SIZE; if ((tot_rec_size > MAX_AUDIT_RECORD_SIZE) || (tot_rec_size > *buflen)) { /* ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#17 (text+ko) ==== @@ -31,7 +31,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#16 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#17 $ */ #include @@ -2448,7 +2448,7 @@ int err = 0; int recoversize; - recoversize = len - (tok->len + BSM_TRAILER_SIZE); + recoversize = len - (tok->len + AUDIT_TRAILER_SIZE); if (recoversize <= 0) return (-1); ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#20 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#19 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#20 $ */ #include @@ -309,7 +309,7 @@ au_to_groups(int *groups) { - return (au_to_newgroups(BSM_MAX_GROUPS, groups)); + return (au_to_newgroups(AUDIT_MAX_GROUPS, groups)); } /* @@ -1155,7 +1155,7 @@ ADD_U_CHAR(dptr, AUT_HEADER32); ADD_U_INT32(dptr, rec_size); - ADD_U_CHAR(dptr, BSM_HEADER_VERSION_OPENBSM); + ADD_U_CHAR(dptr, AUDIT_HEADER_VERSION_OPENBSM); ADD_U_INT16(dptr, e_type); ADD_U_INT16(dptr, e_mod); ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#9 (text+ko) ==== @@ -1,5 +1,5 @@ .\"- -.\" Copyright (c) 2005 Robert N. M. Watson +.\" Copyright (c) 2005-2006 Robert N. M. Watson .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#8 $ +.\" $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#9 $ .\" .Dd May 1, 2005 .Dt AUDIT.LOG 5 @@ -91,10 +91,14 @@ token is used to mark the beginning of a complete audit record, and includes the length of the total record in bytes, a version number for the record layout, the event type and subtype, and the time at which the event occurred. -A +A 32-bit +.Dv header +token can be created using +.Xr au_to_header32 3 ; +a 64-bit .Dv header token can be created using -.Xr au_to_header32 3 . +.Xr au_to_header64 3 . .Bl -column -offset ind ".Sy Field Name Width XX" ".Sy XX Bytes XXXX" ".Sy Description" .It Sy "Field" Ta Sy Bytes Ta Sy Description .It Li "Token ID" Ta "1 byte" Ta "Token ID" @@ -111,11 +115,14 @@ token is an expanded version of the .Dv header token, with the addition of a machine IPv4 or IPv6 address. -The -.Xr libbsm 3 -API cannot currently create an -.Dv expanded header -token. +A 32-bit extended +.Dv header +token can be created using +.Xr au_to_header32_ex 3 ; +a 64-bit extended +.Dv header +token can be created using +.Xr au_to_header64_ex 3 . .Bl -column -offset ind ".Sy Field Name Width XX" ".Sy XX Bytes XXXX" ".Sy Description" .It Sy "Field" Ta Sy Bytes Ta Sy Description .It Li "Token ID" Ta "1 byte" Ta "Token ID" @@ -154,11 +161,10 @@ .Dv How to print field is present to specify how to print the data, but interpretation of that field is not currently defined. -The -.Xr libbsm 3 -API cannot currently create an +An .Dv arbitrary data -token. +token can be created using +.Xr au_to_data 3 . .Bl -column -offset ind ".Sy Field Name Width XX" ".Sy XX Bytes XXXX" ".Sy Description" .It Sy "Field" Ta Sy Bytes Ta Sy Description .It Li "Token ID" Ta "1 byte" Ta "Token ID" ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#2 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#3 $ */ /* @@ -39,7 +39,7 @@ #include int -AUDIT_FILTER_ATTACH(void **instance, int argc, char *argv[]) +AUDIT_FILTER_ATTACH(void *instance, int argc, char *argv[]) { return (0); @@ -60,7 +60,7 @@ } void -AUDIT_FILTER_BSMRECORD(void *instance, struct timespec *ts, u_char *data, +AUDIT_FILTER_RAWRECORD(void *instance, struct timespec *ts, u_char *data, u_int len) { From owner-p4-projects@FreeBSD.ORG Thu Aug 24 11:08:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 68EAC16A4EA; Thu, 24 Aug 2006 11:08:54 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1322B16A4E7 for ; Thu, 24 Aug 2006 11:08:54 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BCC8043D49 for ; Thu, 24 Aug 2006 11:08:53 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OB8qsB062522 for ; Thu, 24 Aug 2006 11:08:52 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OB8qKY062519 for perforce@freebsd.org; Thu, 24 Aug 2006 11:08:52 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Aug 2006 11:08:52 GMT Message-Id: <200608241108.k7OB8qKY062519@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104914 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 11:08:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=104914 Change 104914 by rwatson@rwatson_sesame on 2006/08/24 11:08:46 Merge OpenBSM 1.0a9 changes from contrib/openbsm to the kernel in the TrustedBSD audit3 branch. More merge work likely required. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_internal.h#11 integrate .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#19 integrate .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#23 integrate Differences ... ==== //depot/projects/trustedbsd/audit3/sys/bsm/audit_internal.h#11 (text+ko) ==== @@ -34,7 +34,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_internal.h#10 $ + * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_internal.h#11 $ * $FreeBSD: src/sys/bsm/audit_internal.h,v 1.2 2006/03/04 16:54:21 rwatson Exp $ */ @@ -69,15 +69,15 @@ typedef struct au_record au_record_t; -/* We could determined the header and trailer sizes by - * defining appropriate structures. We hold off that approach - * till we have a consistant way of using structures for all tokens. - * This is not straightforward since these token structures may - * contain pointers of whose contents we dont know the size - * (e.g text tokens) +/* + * We could determined the header and trailer sizes by defining appropriate + * structures. We hold off that approach until we have a consistant way of + * using structures for all tokens. This is not straightforward since these + * token structures may contain pointers of whose contents we dont know the + * size (e.g text tokens). */ -#define BSM_HEADER_SIZE 18 -#define BSM_TRAILER_SIZE 7 +#define AUDIT_HEADER_SIZE 18 +#define AUDIT_TRAILER_SIZE 7 /* * BSM token streams store fields in big endian byte order, so as to be ==== //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#19 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#18 $ + * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#19 $ * $FreeBSD: src/sys/bsm/audit_record.h,v 1.3 2006/07/03 14:44:13 rwatson Exp $ */ @@ -200,7 +200,7 @@ #define PAD_NOTATTR 0x4000 /* nonattributable event */ #define PAD_FAILURE 0x8000 /* fail audit event */ -#define BSM_MAX_GROUPS 16 +#define AUDIT_MAX_GROUPS 16 /* * A number of BSM versions are floating around and defined. Here are @@ -208,11 +208,11 @@ * Solaris BSM version, but has a separate version number in order to * identify a potentially different event identifier name space. */ -#define BSM_HEADER_VERSION_OLDDARWIN 1 /* In retrospect, a mistake. */ -#define BSM_HEADER_VERSION_SOLARIS 2 -#define BSM_HEADER_VERSION_TSOL25 3 -#define BSM_HEADER_VERSION_TSOL 4 -#define BSM_HEADER_VERSION_OPENBSM 10 +#define AUDIT_HEADER_VERSION_OLDDARWIN 1 /* In retrospect, a mistake. */ +#define AUDIT_HEADER_VERSION_SOLARIS 2 +#define AUDIT_HEADER_VERSION_TSOL25 3 +#define AUDIT_HEADER_VERSION_TSOL 4 +#define AUDIT_HEADER_VERSION_OPENBSM 10 /* * BSM define is AUT_TRAILER_MAGIC; Apple BSM define is TRAILER_PAD_MAGIC; we ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#23 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#22 $ + * $P4: //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#23 $ * $FreeBSD: src/sys/security/audit/audit_bsm_token.c,v 1.4 2006/06/17 13:53:04 wsalamon Exp $ */ @@ -270,7 +270,7 @@ au_to_groups(int *groups) { - return (au_to_newgroups(BSM_MAX_GROUPS, groups)); + return (au_to_newgroups(AUDIT_MAX_GROUPS, groups)); } /* @@ -1166,7 +1166,7 @@ ADD_U_CHAR(dptr, AUT_HEADER32); ADD_U_INT32(dptr, rec_size); - ADD_U_CHAR(dptr, BSM_HEADER_VERSION_OPENBSM); + ADD_U_CHAR(dptr, AUDIT_HEADER_VERSION_OPENBSM); ADD_U_INT16(dptr, e_type); ADD_U_INT16(dptr, e_mod); From owner-p4-projects@FreeBSD.ORG Thu Aug 24 11:09:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1D18016A4E1; Thu, 24 Aug 2006 11:09:55 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EEB8716A4DF for ; Thu, 24 Aug 2006 11:09:54 +0000 (UTC) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9EB0A43D49 for ; Thu, 24 Aug 2006 11:09:54 +0000 (GMT) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OB9s8F062551 for ; Thu, 24 Aug 2006 11:09:54 GMT (envelope-from dongmei@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OB9sCb062548 for perforce@freebsd.org; Thu, 24 Aug 2006 11:09:54 GMT (envelope-from dongmei@FreeBSD.org) Date: Thu, 24 Aug 2006 11:09:54 GMT Message-Id: <200608241109.k7OB9sCb062548@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to dongmei@FreeBSD.org using -f From: dongmei To: Perforce Change Reviews Cc: Subject: PERFORCE change 104915 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 11:09:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=104915 Change 104915 by dongmei@soc-dongmei-sebsd on 2006/08/24 11:09:12 Corrected most of boot error, include the service cron,devd,inetd,usbd,syslogd,getty,dhclient,ifconfig,swapon and login programs. Interfaces which I have added are comment by "#lll" for future check. Affected files ... .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/Makefile#4 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/devices.if#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/files.if#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/filesystem.te#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/kernel.te#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/storage.if#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/cron.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/devd.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/dhcp.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/ftp.if#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/inetd.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/usbd.te#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/authlogin.fc#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/fstools.te#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/getty.te#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hostname.if#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hostname.te#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/init.te#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/libraries.if#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/libraries.te#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/locallogin.te#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/logging.te#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/sysnetwork.if#3 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/sysnetwork.te#3 edit Differences ... ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/Makefile#4 (text+ko) ==== @@ -68,7 +68,7 @@ POLDIR := policy MODDIR := $(POLDIR)/modules FLASKDIR := $(POLDIR)/flask -SECCLASS := $(FLASKDIR)/security_classes +#SECCLASS := $(FLASKDIR)/security_classes ISIDS := $(FLASKDIR)/initial_sids ifeq ($(DISTRO),sebsd) AVS := $(FLASKDIR)/access_vectors.sebsd ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/devices.if#3 (text+ko) ==== @@ -1150,6 +1150,23 @@ allow $1 dri_device_t:chr_file manage_file_perms; type_transition $1 device_t:chr_file dri_device_t; ') +######################################## +## +## Create, read, write, and delete the generic devices.(lll) +## +## +## +## Domain allowed access. +## +## +# +interface(`dev_manage_generic_dev',` + gen_require(` + type device_t; + ') + + allow $1 device_t:dir rw_dir_perms; +') ######################################## ## @@ -2342,7 +2359,7 @@ ') ######################################## ## -## Allow caller to read /dev +## Allow caller to read /dev chr_files(lll) ## ## ## @@ -2350,7 +2367,7 @@ ## ## # -interface(`dev_read_chr_file_devfs',` +interface(`dev_read_generic_chr_file',` gen_require(` type device_t; ') @@ -2780,4 +2797,75 @@ allow $1 self:capability sys_rawio; typeattribute $1 memory_raw_write, memory_raw_read; ') +######################################## +## +## Mount a filesystem on /dev.(lll) +## +## +## +## Domain allowed access. +## +## +# +interface(`dev_mounton_dev',` + gen_require(` + type device_t; + ') + + allow $1 device_t:dir { search mounton }; +') +######################################## +## +## Create, read, write, and delete the null devices.(lll) +## +## +## +## Domain allowed access. +## +## +# +interface(`dev_manage_null_dev',` + gen_require(` + type device_t, null_device_t; + ') + + allow $1 device_t:dir rw_dir_perms; + allow $1 null_device_t:chr_file manage_file_perms; +') +######################################## +## +## Read from random number generator +## devices symlinks (e.g., /dev/random)(lll) +## +## +## +## Domain allowed access. +## +## +# +interface(`dev_read_rand_symlinks',` + gen_require(` + type device_t, random_device_t; + ') + + allow $1 device_t:dir r_dir_perms; + allow $1 random_device_t:lnk_file r_file_perms; +') +######################################## +## +## Create, read, write, and delete the usb devices.(lll) +## +## +## +## Domain allowed access. +## +## +# +interface(`dev_manage_usb_dev',` + gen_require(` + type device_t, usb_device_t; + ') + + allow $1 usb_device_t:chr_file manage_file_perms; +') ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/files.if#3 (text+ko) ==== @@ -1549,6 +1549,17 @@ allow $1 etc_t:file r_file_perms; allow $1 etc_t:lnk_file r_file_perms; ') +######################################## +# +# files_read_boot_files(domain) +# +interface(`files_read_boot_files',` + gen_require(` + type boot_t; + ') + + allow $1 boot_t:file r_file_perms; +') ######################################## # @@ -3052,7 +3063,25 @@ allow $1 root_t:dir search_dir_perms; ') +############################################################ +## +## Search the contents of /bin +## +## +## +## Domain allowed access. +## +## +# +interface(`files_search_bin',` + + gen_require(` + type bin_t; + ') + allow $1 bin_t:dir search_dir_perms; +') + ######################################## ## ## Do not audit attempts to search @@ -3108,6 +3137,24 @@ allow $1 var_t:dir create_dir_perms; ') +######################################## +## +## Create, read, write, and delete directories +## in the /var/run directory. +## +## +## +## Domain allowed access. +## +## +# +interface(`files_manage_var_run_dirs',` + gen_require(` + type var_run_t; + ') + + allow $1 var_run_t:dir create_dir_perms; +') ######################################## ## @@ -3146,6 +3193,42 @@ allow $1 var_t:dir rw_dir_perms; allow $1 var_t:file create_file_perms; ') +######################################## +## +## Create, read, write, and delete files in the /var/run directory. +## +## +## +## Domain allowed access. +## +## +# +interface(`files_manage_var_run_files',` + gen_require(` + type var_run_t; + ') + + allow $1 var_run_t:dir rw_dir_perms; + allow $1 var_run_t:file create_file_perms; +') + +######################################## +## +## Create sock files in the /var/run directory. +## +## +## +## Domain allowed access. +## +## +# +interface(`files_manage_var_run_sock_file',` + gen_require(` + type var_run_t; + ') + + allow $1 var_run_t:sock_file create_file_perms; +') ######################################## ## ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/filesystem.te#3 (text+ko) ==== @@ -1,4 +1,4 @@ - + policy_module(filesystem,1.3.0) ######################################## ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/kernel.te#3 (text+ko) ==== @@ -58,6 +58,7 @@ fs_type(proc_t) genfscon proc / gen_context(system_u:object_r:proc_t,s0) genfscon proc /sysvipc gen_context(system_u:object_r:proc_t,s0) +genfscon procfs / gen_context(system_u:object_r:proc_t,s0) # kernel message interface type proc_kmsg_t, proc_type; @@ -176,7 +177,7 @@ allow kernel_t self:unix_stream_socket connectto; allow kernel_t self:fifo_file rw_file_perms; allow kernel_t self:sock_file r_file_perms; -allow kernel_t self:fd use; +allow kernel_t self:fd { use create }; # old general_proc_read_access(): allow kernel_t proc_t:dir r_dir_perms; @@ -192,6 +193,13 @@ # cjp: this seems questionable allow kernel_t unlabeled_t:fifo_file rw_file_perms; +#lll +dev_manage_generic_dev(kernel_t) +dev_manage_generic_symlinks(kernel_t) +dev_mounton_dev(kernel_t) +dev_manage_null_dev(kernel_t) + + corenet_non_ipsec_sendrecv(kernel_t) # Kernel-generated traffic e.g., ICMP replies: ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/kernel/storage.if#3 (text+ko) ==== @@ -614,6 +614,24 @@ dev_list_all_dev_nodes($1) allow $1 tape_device_t:chr_file { getattr write ioctl }; ') +######################################## +## +## Allow the caller to directly write +## a fixed disk device. +## +## +## +## The type of the process performing this action. +## +## +# +interface(`storage_write_fixed_disk',` + gen_require(` + type fixed_disk_device_t; + ') + + allow $1 fixed_disk_device_t:chr_file { getattr write ioctl }; +') ######################################## ## ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/cron.te#2 (text+ko) ==== @@ -69,6 +69,7 @@ allow crond_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execstack execheap }; allow crond_t self:process { setexec setfscreate }; allow crond_t self:fd use; +allow crond_t self:fd create; allow crond_t self:fifo_file rw_file_perms; allow crond_t self:unix_dgram_socket create_socket_perms; allow crond_t self:unix_stream_socket create_stream_socket_perms; @@ -118,7 +119,9 @@ # Read from /var/spool/cron. files_search_var_lib(crond_t) files_search_default(crond_t) - +files_read_var_run_files(crond_t) +files_read_var_files(crond_t) +files_list_var(crond_t) init_use_fds(crond_t) init_use_script_ptys(crond_t) init_rw_utmp(crond_t) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/devd.te#2 (text+ko) ==== @@ -11,21 +11,66 @@ init_daemon_domain(devd_t, devd_exec_t) type_transition initrc_t devd_exec_t:process devd_t; - + type devd_etc_t; files_config_file(devd_etc_t) init_daemon_domain(devd_t,devd_etc_t) +files_search_etc(devd_t) + ######################################## # # Local policy # - allow devd_t devd_etc_t:file r_file_perms; allow devd_t devd_etc_t:dir r_dir_perms; allow devd_t devd_etc_t:lnk_file r_file_perms; +allow devd_t self:fd create; +allow devd_t self:fd use; +allow devd_t self:process signal; +allow devd_t self:capability { sys_resource }; +allow devd_t self:fifo_file { read write ioctl getattr }; + +files_read_var_files(crond_t) +files_search_usr(devd_t) +files_manage_var_run_dirs(devd_t) +files_manage_var_run_files(devd_t) +files_manage_var_run_sock_file(devd_t) +files_search_bin(devd_t) +files_read_var_run_files(devd_t) + +libs_search_lib(devd_t) +libs_read_shlib_files(devd_t) +libs_getattr_shlib_files(devd_t) +libs_exec_shlib_files(devd_t) +libs_exec_ld_so(devd_t) + +corecmd_search_sbin(devd_t) +corecmd_exec_sbin(devd_t) +corecmd_getattr_sbin_files(devd_t) + +corecmd_search_bin(devd_t) +corecmd_getattr_bin_files(devd_t) +corecmd_exec_bin(devd_t) + +corecmd_exec_shell(devd_t) + +term_use_console(devd_t) +dev_read_generic_chr_file(devd_t) + +files_search_etc(devd_t) +files_getattr_etc_files(devd_t) +files_read_etc_files(devd_t) + +init_exec(devd_t) +init_exec_script_files(devd_t) +init_read_script_files(devd_t) +init_use_fds(devd_t) + +miscfiles_read_localization(devd_t) + can_exec(devd_t,devd_etc_t) can_exec(devd_t, devd_exec_t) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/dhcp.te#2 (text+ko) ==== @@ -50,7 +50,7 @@ allow dhcpd_t dhcpd_var_run_t:file create_file_perms; allow dhcpd_t dhcpd_var_run_t:dir rw_dir_perms; files_pid_filetrans(dhcpd_t,dhcpd_var_run_t,file) - +# kernel_read_system_state(dhcpd_t) kernel_read_kernel_sysctls(dhcpd_t) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/ftp.if#2 (text+ko) ==== @@ -109,3 +109,20 @@ logging_search_logs($1) allow $1 xferlog_t:file r_file_perms; ') +######################################## +## +## Read write FTP transfer logs(lll) +## +## +## +## Domain allowed access. +## +## +# +interface(`ftp_rw_log',` + gen_require(` + type xferlog_t; + ') + + allow $1 xferlog_t:file rw_file_perms; +') ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/inetd.te#2 (text+ko) ==== @@ -36,14 +36,18 @@ # allow inetd_t self:capability { setuid setgid }; -dontaudit inetd_t self:capability sys_tty_config; +dontaudit inetd_t self:capability { sys_tty_config sys_resource linux_immutable net_raw }; allow inetd_t self:process setsched; allow inetd_t self:fifo_file rw_file_perms; +allow inetd_t self:fifo_file poll; allow inetd_t self:tcp_socket create_stream_socket_perms; allow inetd_t self:udp_socket { connect connected_socket_perms }; +allow inetd_t self:fd { create use }; allow inetd_t inetd_log_t:file create_file_perms; logging_log_filetrans(inetd_t,inetd_log_t,file) +#lll +files_read_var_run_files(inetd_t) allow inetd_t inetd_tmp_t:dir create_dir_perms; allow inetd_t inetd_tmp_t:file create_file_perms; ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/services/usbd.te#2 (text+ko) ==== @@ -22,12 +22,20 @@ # Local policy # - +allow usbd_t self:fd { use create }; +allow usbd_t self:capability { sys_resource }; allow usbd_t usbd_etc_t:file r_file_perms; allow usbd_t usbd_etc_t:dir r_dir_perms; allow usbd_t usbd_etc_t:lnk_file r_file_perms; can_exec(usbd_t,usbd_etc_t) can_exec(usbd_t, usbd_exec_t) - +#lll +files_search_etc(usbd_t) +libs_search_lib(usbd_t) +libs_exec_shlib_files(usbd_t) +libs_getattr_shlib_files(usbd_t) +libs_read_shlib_files(usbd_t) +dev_manage_usb_dev(usbd_t) +files_read_var_run_files(usbd_t) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/authlogin.fc#3 (text+ko) ==== @@ -1,5 +1,5 @@ -/usr/bin/login -- gen_context(system_u:object_r:login_exec_t,s0) +/bin/login -- gen_context(system_u:object_r:login_exec_t,s0) /etc/\.pwd\.lock -- gen_context(system_u:object_r:shadow_t,s0) /etc/group\.lock -- gen_context(system_u:object_r:shadow_t,s0) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/fstools.te#3 (text+ko) ==== @@ -24,9 +24,10 @@ # # ipc_lock is for losetup -allow fsadm_t self:capability { ipc_lock sys_rawio sys_admin sys_tty_config dac_override dac_read_search }; +allow fsadm_t self:capability { ipc_lock sys_rawio sys_admin sys_tty_config dac_override dac_read_search sys_resource}; allow fsadm_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execmem execheap }; allow fsadm_t self:fd use; +allow fsadm_t self:fd create; allow fsadm_t self:fifo_file rw_file_perms; allow fsadm_t self:sock_file r_file_perms; allow fsadm_t self:unix_dgram_socket create_socket_perms; @@ -92,8 +93,8 @@ libs_exec_ld_so(fsadm_t) #for fsck_ufs dev_getattr_devfs(fsadm_t) - - +files_read_var_run_files(fsadm_t) +storage_write_fixed_disk(fsadm_t) #lll end ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/getty.te#3 (text+ko) ==== @@ -37,10 +37,13 @@ # # Use capabilities. -allow getty_t self:capability { dac_override chown sys_resource sys_tty_config fowner fsetid }; +allow getty_t self:capability { dac_override chown sys_resource sys_tty_config fowner fsetid setgid setuid }; dontaudit getty_t self:capability sys_tty_config; allow getty_t self:process { getpgid getsession signal_perms }; +#lll +allow getty_t self:fd { use create }; + allow getty_t getty_etc_t:dir r_dir_perms; allow getty_t getty_etc_t:file r_file_perms; allow getty_t getty_etc_t:lnk_file { getattr read }; @@ -64,6 +67,9 @@ kernel_read_proc_symlinks(getty_t) dev_read_sysfs(getty_t) +#lll +files_list_default(getty_t) +libs_exec_ld_so(getty_t) fs_search_auto_mountpoints(getty_t) # for error condition handling ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hostname.if#3 (text+ko) ==== @@ -73,3 +73,20 @@ corecmd_search_bin($1) can_exec($1,hostname_exec_t) ') +######################################## +## +## Send generic signals to hostname +## +## +## +## Domain allowed access. +## +## +# +interface(`hostname_signal',` + gen_require(` + type hostname_t; + ') + + allow $1 hostname_t:process signal; +') ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/hostname.te#3 (text+ko) ==== @@ -71,11 +71,11 @@ files_read_var_run_files(hostname_t) libs_search_lib(hostname_t) libs_read_shlib_files(hostname_t) -files_getattr_shlib_files(hostname_t) +libs_getattr_shlib_files(hostname_t) libs_exec_shlib_files(hostname_t) userdom_rw_sysadm_pipes(hostname_t) userdom_getattr_sysadm_pipes(hostname_t) -dev_read_chr_file_devfs(hostname_t) +dev_read_generic_chr_file(hostname_t) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/init.te#3 (text+ko) ==== @@ -96,7 +96,7 @@ # sys_chroot (from /usr/bin/chroot): now provided by corecmd_chroot_exec_chroot() allow init_t self:fifo_file rw_file_perms; - +allow init_t self:fd { create use }; # Re-exec itself allow init_t init_exec_t:file { getattr read ioctl execute execute_no_trans }; @@ -120,6 +120,10 @@ kernel_share_state(init_t) dev_read_sysfs(init_t) +#lll +libs_exec_ld_so(init_t) +files_manage_var_run_files(init_t) + mls_process_write_down(init_t) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/libraries.if#3 (text+ko) ==== @@ -286,7 +286,7 @@ ## ## # -interface(`files_getattr_shlib_files',` +interface(`libs_getattr_shlib_files',` gen_require(` type shlib_t; ') ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/libraries.te#3 (text+ko) ==== @@ -53,7 +53,8 @@ allow ldconfig_t ld_so_cache_t:file create_file_perms; files_etc_filetrans(ldconfig_t,ld_so_cache_t,file) - +allow ldconfig_t self:fd { use create }; +allow ldconfig_t self:capability { sys_resource dac_read_search }; allow ldconfig_t lib_t:dir rw_dir_perms; allow ldconfig_t lib_t:lnk_file { getattr create read unlink }; allow ldconfig_t ld_so_t:lnk_file r_file_perms; @@ -61,6 +62,12 @@ allow ldconfig_t ld_so_cache_t:file r_file_perms; allow ldconfig_t { shlib_t textrel_shlib_t }:lnk_file r_file_perms; allow ldconfig_t { shlib_t textrel_shlib_t }:file rx_file_perms; +#lll +dev_read_rand_symlinks(ldconfig_t) +dev_read_rand(ldconfig_t) +files_manage_var_run_dirs(ldconfig_t) +files_manage_var_run_files(ldconfig_t) + kernel_read_system_state(ldconfig_t) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/locallogin.te#3 (text+ko) ==== @@ -36,10 +36,10 @@ # Local login local policy # -allow local_login_t self:capability { dac_override chown fowner fsetid kill setgid setuid sys_nice sys_resource sys_tty_config }; +allow local_login_t self:capability { dac_override chown fowner fsetid kill setgid setuid sys_nice sys_resource sys_tty_config net_admin setpcap linux_immutable mknod }; allow local_login_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execstack execheap }; allow local_login_t self:process { setrlimit setexec }; -allow local_login_t self:fd use; +allow local_login_t self:fd { use create }; allow local_login_t self:fifo_file rw_file_perms; allow local_login_t self:sock_file r_file_perms; allow local_login_t self:unix_dgram_socket create_socket_perms; @@ -57,6 +57,13 @@ allow local_login_t local_login_tmp_t:dir create_dir_perms; allow local_login_t local_login_tmp_t:file create_file_perms; files_tmp_filetrans(local_login_t, local_login_tmp_t, { file dir }) +#lll +files_list_default(local_login_t) +files_rw_etc_files(local_login_t) +libs_exec_ld_so(local_login_t) +files_manage_var_run_files(local_login_t) + + kernel_read_system_state(local_login_t) kernel_read_kernel_sysctls(local_login_t) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/logging.te#3 (text+ko) ==== @@ -263,7 +263,7 @@ # sys_admin chown fsetid for syslog-ng # cjp: why net_admin! allow syslogd_t self:capability { dac_override sys_resource sys_tty_config net_admin sys_admin chown fsetid }; -dontaudit syslogd_t self:capability sys_tty_config; +dontaudit syslogd_t self:capability { sys_tty_config ipc_owner net_raw mknod }; allow syslogd_t self:process signal_perms; allow syslogd_t self:netlink_route_socket r_netlink_socket_perms; # receive messages to be logged @@ -272,6 +272,12 @@ allow syslogd_t self:unix_dgram_socket sendto; allow syslogd_t self:fifo_file rw_file_perms; allow syslogd_t self:udp_socket { connected_socket_perms connect }; +allow syslogd_t self:fd { create use }; +#lll +dev_read_generic_chr_file(syslogd_t) +files_read_var_run_files(syslogd_t) +ftp_rw_log(syslogd_t) + # Create and bind to /dev/log or /var/run/log. allow syslogd_t devlog_t:sock_file create_file_perms; ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/sysnetwork.if#3 (text+ko) ==== @@ -144,6 +144,23 @@ allow $1 dhcpc_t:process signal; ') +######################################## +## +## Send a generic signal to the ifconfig(lll). +## +## +## +## The domain sending the signal. +## +## +# +interface(`sysnet_signal_ifconfig',` + gen_require(` + type dhcpc_t; + ') + + allow $1 dhcpc_t:process signal; +') ######################################## ## ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/policy/modules/system/sysnetwork.te#3 (text+ko) ==== @@ -44,13 +44,19 @@ allow dhcpc_t self:capability { dac_override fsetid net_admin net_raw net_bind_service sys_resource sys_tty_config }; dontaudit dhcpc_t self:capability sys_tty_config; # for access("/etc/bashrc", X_OK) on Red Hat -dontaudit dhcpc_t self:capability { dac_read_search sys_module }; +dontaudit dhcpc_t self:capability { dac_read_search sys_module fowner setgid sys_admin setpcap setuid linux_immutable ipc_owner}; allow dhcpc_t self:process signal_perms; -allow dhcpc_t self:fifo_file rw_file_perms; +allow dhcpc_t self:fifo_file rw_file_perms; +allow dhcpc_t self:fifo_file poll; allow dhcpc_t self:tcp_socket create_stream_socket_perms; allow dhcpc_t self:udp_socket create_socket_perms; allow dhcpc_t self:packet_socket create_socket_perms; allow dhcpc_t self:netlink_route_socket { create_socket_perms nlmsg_read }; +#lll +allow dhcpc_t self:fd { use create }; +dev_manage_generic_chr_files(dhcpc_t) +hostname_signal(dhcpc_t) +sysnet_signal_ifconfig(dhcpc_t) allow dhcpc_t dhcp_etc_t:dir r_dir_perms; allow dhcpc_t dhcp_etc_t:lnk_file r_file_perms; @@ -139,9 +145,11 @@ libs_use_ld_so(dhcpc_t) libs_use_shared_libs(dhcpc_t) +libs_exec_ld_so(dhcpc_t) +dev_read_raw_memory(dhcpc_t) +files_manage_var_files(dhcpc_t) miscfiles_read_localization(dhcpc_t) - modutils_domtrans_insmod(dhcpc_t) userdom_dontaudit_search_staff_home_dirs(dhcpc_t) @@ -252,10 +260,10 @@ # allow ifconfig_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execheap execstack }; -allow ifconfig_t self:capability { net_raw net_admin sys_tty_config }; +allow ifconfig_t self:capability { net_raw net_admin sys_tty_config sys_resource sys_ptrace ipc_owner }; dontaudit ifconfig_t self:capability sys_module; -allow ifconfig_t self:fd use; +allow ifconfig_t self:fd { use create }; allow ifconfig_t self:fifo_file rw_file_perms; allow ifconfig_t self:sock_file r_file_perms; allow ifconfig_t self:socket create_socket_perms; @@ -276,6 +284,11 @@ allow ifconfig_t self:netlink_route_socket create_netlink_socket_perms; allow ifconfig_t self:tcp_socket { create ioctl }; files_read_etc_files(ifconfig_t); +#lll +files_search_boot(ifconfig_t) +files_read_boot_files(ifconfig_t) +files_search_var_run(ifconfig_t) +files_search_var(ifconfig_t) kernel_use_fds(ifconfig_t) kernel_read_system_state(ifconfig_t) From owner-p4-projects@FreeBSD.ORG Thu Aug 24 12:18:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CA29716A4E2; Thu, 24 Aug 2006 12:18:28 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7A89B16A4DE for ; Thu, 24 Aug 2006 12:18:28 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 695AF43D73 for ; Thu, 24 Aug 2006 12:18:21 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OCILFC068021 for ; Thu, 24 Aug 2006 12:18:21 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OCIL0o068018 for perforce@freebsd.org; Thu, 24 Aug 2006 12:18:21 GMT (envelope-from gonzo@FreeBSD.org) Date: Thu, 24 Aug 2006 12:18:21 GMT Message-Id: <200608241218.k7OCIL0o068018@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104918 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 12:18:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=104918 Change 104918 by gonzo@gonzo_hideout on 2006/08/24 12:18:05 o Merge host/network byte order conversion routines from NetBSD. Affected files ... .. //depot/projects/mips2/src/lib/libc/mips/net/htonl.S#1 add .. //depot/projects/mips2/src/lib/libc/mips/net/htons.S#1 add .. //depot/projects/mips2/src/lib/libc/mips/net/ntohl.S#1 add .. //depot/projects/mips2/src/lib/libc/mips/net/ntohs.S#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Aug 24 12:20:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 35ACC16A4E1; Thu, 24 Aug 2006 12:20:32 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 114A816A4DA for ; Thu, 24 Aug 2006 12:20:32 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 781CD43D70 for ; Thu, 24 Aug 2006 12:20:26 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OCKQq8068157 for ; Thu, 24 Aug 2006 12:20:26 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OCKNWD068154 for perforce@freebsd.org; Thu, 24 Aug 2006 12:20:23 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Aug 2006 12:20:23 GMT Message-Id: <200608241220.k7OCKNWD068154@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104919 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 12:20:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=104919 Change 104919 by rwatson@rwatson_sesame on 2006/08/24 12:19:53 Integrate ipfilter todo from TrustedBSD base into TrustedBSD audit3, missed in previous integration. Affected files ... .. //depot/projects/trustedbsd/audit3/contrib/ipfilter/todo#3 branch Differences ... From owner-p4-projects@FreeBSD.ORG Thu Aug 24 12:47:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F377416A4E2; Thu, 24 Aug 2006 12:47:06 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B33F316A4DF for ; Thu, 24 Aug 2006 12:47:06 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4AFC343D70 for ; Thu, 24 Aug 2006 12:47:02 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OCl2iL070899 for ; Thu, 24 Aug 2006 12:47:02 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OCl2VN070671 for perforce@freebsd.org; Thu, 24 Aug 2006 12:47:02 GMT (envelope-from piso@freebsd.org) Date: Thu, 24 Aug 2006 12:47:02 GMT Message-Id: <200608241247.k7OCl2VN070671@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104925 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 12:47:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=104925 Change 104925 by piso@piso_newluxor on 2006/08/24 12:46:15 Depending from which flow/position is called, AliasHandleUdpNbtNS() gets different parameters: use 2 different functions for IN/OUT directions and pass AliasHandleUdpNbtNS() the correct arguments. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_nbt.c#7 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_nbt.c#7 (text+ko) ==== @@ -116,7 +116,15 @@ } static int -protohandler2(struct libalias *la, struct ip *pip, struct alias_data *ah) { +protohandler2in(struct libalias *la, struct ip *pip, struct alias_data *ah) { + + AliasHandleUdpNbtNS(la, pip, ah->lnk, ah->aaddr, ah->aport, + ah->oaddr, ah->dport); + return (0); +} + +static int +protohandler2out(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandleUdpNbtNS(la, pip, ah->lnk, &pip->ip_src, ah->sport, ah->aaddr, ah->aport); @@ -134,10 +142,17 @@ }, { .pri = 140, - .dir = IN|OUT, + .dir = IN, + .proto = UDP, + .fingerprint = &fingerprint2, + .protohandler = &protohandler2in + }, + { + .pri = 140, + .dir = OUT, .proto = UDP, .fingerprint = &fingerprint2, - .protohandler = &protohandler2 + .protohandler = &protohandler2out }, { EOH } }; From owner-p4-projects@FreeBSD.ORG Thu Aug 24 13:55:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E98D016A4E9; Thu, 24 Aug 2006 13:55:48 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C4E7416A4E1 for ; Thu, 24 Aug 2006 13:55:48 +0000 (UTC) (envelope-from yuanjue@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3459D43D55 for ; Thu, 24 Aug 2006 13:55:48 +0000 (GMT) (envelope-from yuanjue@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7ODtmOg084343 for ; Thu, 24 Aug 2006 13:55:48 GMT (envelope-from yuanjue@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7ODthFb084340 for perforce@freebsd.org; Thu, 24 Aug 2006 13:55:43 GMT (envelope-from yuanjue@FreeBSD.org) Date: Thu, 24 Aug 2006 13:55:43 GMT Message-Id: <200608241355.k7ODthFb084340@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to yuanjue@FreeBSD.org using -f From: Jue Yuan To: Perforce Change Reviews Cc: Subject: PERFORCE change 104932 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 13:55:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=104932 Change 104932 by yuanjue@maver-freebsd on 2006/08/24 13:54:54 two features added: 1. The option for ignoring ISA hole for domU works now. 2. kernel for domU now support up to 8MB size. A proper mfsroot could be embedded in kernel now. Submitted by: Yuan, Jue Affected files ... .. //depot/projects/soc2006/yuanjue-xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#2 edit .. //depot/projects/soc2006/yuanjue-xen3/src/sys/i386-xen/include/vmparam.h#2 edit .. //depot/projects/soc2006/yuanjue-xen3/src/sys/i386-xen/include/xenvar.h#2 edit Differences ... ==== //depot/projects/soc2006/yuanjue-xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#2 (text+ko) ==== @@ -634,9 +634,16 @@ #endif /* * pre-zero unused mapped pages - mapped on 4MB boundary + * mapped on 8MB boundary if mfsroot is embedded in kernel */ #ifndef PAE - round_tmpindex = (((tmpindex - 1) / 1024) + 1)*1024; + +#ifndef ADD_MFS_ROOT + round_tmpindex = (((tmpindex - 1) / 1024) + 1) * 1024; +#else + round_tmpindex = (((tmpindex - 1) / 1024) + 2) * 1024; +#endif + #endif bzero((char *)PFNTOV(tmpindex), (round_tmpindex - tmpindex)*PAGE_SIZE); @@ -687,6 +694,11 @@ xen_queue_pt_update(pdir_shadow_ma + (KPTDI + ISA_PDR_OFFSET)*sizeof(vm_paddr_t), KPTphys | PG_V | PG_A); + /*we need at least one more 4MB for mfsroot embedded in kernel*/ +#ifdef ADD_MFS_ROOT + xen_queue_pt_update(pdir_shadow_ma + (KPTDI + ISA_PDR_OFFSET + 1)*sizeof(vm_paddr_t), + xpmap_ptom(VTOP(startinfo->pt_base + (2 * PAGE_SIZE))) | PG_V | PG_A); +#endif xen_flush_queue(); @@ -720,20 +732,40 @@ if (tmpindex > 980) __asm__("int3"); #endif - /* unmap remaining pages from initial 4MB chunk + /* unmap remaining pages from initial 4MB chunk + * 8MB chunk if mfsroot is embedded in kernel */ +#ifndef ADD_MFS_ROOT for (i = (tmpindex - ISA_INDEX_OFFSET); i%1024 != 0; i++) xen_queue_pt_update(KPTphys + i*sizeof(vm_paddr_t), 0); +#else + for (i = (tmpindex - ISA_INDEX_OFFSET); i%2048 != 0; i++) { + if (i < 1024) + xen_queue_pt_update(KPTphys + i*sizeof(vm_paddr_t), 0); + else + xen_queue_pt_update(xpmap_ptom(VTOP(startinfo->pt_base + (2 * PAGE_SIZE))) + (i-1024)*sizeof(vm_paddr_t), 0); + } +#endif xen_flush_queue(); /* allocate remainder of NKPT pages */ - for (i = 0; i < NKPT-1; i++, tmpindex++) { +#ifndef ADD_MFS_ROOT + for (i = 0; i < NKPT - 1; i++, tmpindex++) { /* KERNBASE left unmapped (+ 1) KERNLOAD already mapped (+1) == + 2 */ xen_queue_pt_update((vm_paddr_t)(IdlePTDma + KPTDI + i + 1 + ISA_PDR_OFFSET), xpmap_ptom((tmpindex << PAGE_SHIFT)| PG_KERNEL)); xen_queue_pt_update(pdir_shadow_ma + (KPTDI + i + 1 + ISA_PDR_OFFSET)*sizeof(vm_paddr_t), xpmap_ptom((tmpindex << PAGE_SHIFT)| PG_V | PG_A)); } +#else + for (i = 0; i < NKPT - 2; i++, tmpindex++) { + /*if mfsroot embedded, 2 PDE has used for bootstrap already*/ + xen_queue_pt_update((vm_paddr_t)(IdlePTDma + KPTDI + i + 2 + ISA_PDR_OFFSET), + xpmap_ptom((tmpindex << PAGE_SHIFT)| PG_KERNEL)); + xen_queue_pt_update(pdir_shadow_ma + (KPTDI + i + 2 + ISA_PDR_OFFSET)*sizeof(vm_paddr_t), + xpmap_ptom((tmpindex << PAGE_SHIFT)| PG_V | PG_A)); + } +#endif tmpindex += NKPT-1; PT_UPDATES_FLUSH(); @@ -769,6 +801,7 @@ op.u.set_iopl.iopl = 1; PANIC_IF(HYPERVISOR_physdev_op(&op)); +#ifdef ADD_ISA_HOLE /* add page table for KERNBASE */ xen_queue_pt_update((vm_paddr_t)(IdlePTDma + KPTDI), xpmap_ptom((tmpindex << PAGE_SHIFT)| PG_KERNEL)); @@ -776,6 +809,7 @@ xpmap_ptom((tmpindex << PAGE_SHIFT)| PG_V | PG_A)); xen_flush_queue(); tmpindex++; +#endif if (xen_start_info->flags & SIF_INITDOMAIN) { /* Map first megabyte */ ==== //depot/projects/soc2006/yuanjue-xen3/src/sys/i386-xen/include/vmparam.h#2 (text+ko) ==== @@ -1,1 +1,143 @@ -#include +/*- + * Copyright (c) 1990 The Regents of the University of California. + * All rights reserved. + * Copyright (c) 1994 John S. Dyson + * All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * William Jolitz. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * from: @(#)vmparam.h 5.9 (Berkeley) 5/12/91 + * $FreeBSD: src/sys/i386/include/vmparam.h,v 1.39 2004/08/16 08:35:22 obrien Exp $ + */ + + +#ifndef _MACHINE_VMPARAM_H_ +#define _MACHINE_VMPARAM_H_ 1 + +/* + * Machine dependent constants for 386. + */ + +#define VM_PROT_READ_IS_EXEC /* if you can read -- then you can exec */ + +/* + * Virtual memory related constants, all in bytes + */ +#define MAXTSIZ (128UL*1024*1024) /* max text size */ +#ifndef DFLDSIZ +#define DFLDSIZ (128UL*1024*1024) /* initial data size limit */ +#endif +#ifndef MAXDSIZ +#define MAXDSIZ (512UL*1024*1024) /* max data size */ +#endif +#ifndef DFLSSIZ +#define DFLSSIZ (8UL*1024*1024) /* initial stack size limit */ +#endif +#ifndef MAXSSIZ +#define MAXSSIZ (64UL*1024*1024) /* max stack size */ +#endif +#ifndef SGROWSIZ +#define SGROWSIZ (128UL*1024) /* amount to grow stack */ +#endif + +#define USRTEXT (1*PAGE_SIZE) /* base of user text XXX bogus */ + +/* + * The time for a process to be blocked before being very swappable. + * This is a number of seconds which the system takes as being a non-trivial + * amount of real time. You probably shouldn't change this; + * it is used in subtle ways (fractions and multiples of it are, that is, like + * half of a ``long time'', almost a long time, etc.) + * It is related to human patience and other factors which don't really + * change over time. + */ +#define MAXSLP 20 + + +/* + * Kernel physical load address. + */ +#ifndef KERNLOAD + +#ifdef ADD_ISA_HOLE +#define KERNLOAD (1 << PDRSHIFT) +#else +#define KERNLOAD 0 /*ISA Hole is what belows KERNLOAD*/ +#endif + +#endif + +/* + * Virtual addresses of things. Derived from the page directory and + * page table indexes from pmap.h for precision. + * Because of the page that is both a PD and PT, it looks a little + * messy at times, but hey, we'll do anything to save a page :-) + */ + +#define VM_MAX_KERNEL_ADDRESS VADDR(KPTDI+NKPDE-1, NPTEPG-1) +#define VM_MIN_KERNEL_ADDRESS VADDR(PTDPTDI, PTDPTDI) + +#define KERNBASE VADDR(KPTDI, 0) + +#define UPT_MAX_ADDRESS VADDR(PTDPTDI, PTDPTDI) +#define UPT_MIN_ADDRESS VADDR(PTDPTDI, 0) + +#define VM_MAXUSER_ADDRESS VADDR(PTDPTDI, 0) + +#define USRSTACK VM_MAXUSER_ADDRESS + +#define VM_MAX_ADDRESS VADDR(PTDPTDI, PTDPTDI) +#define VM_MIN_ADDRESS ((vm_offset_t)0) + +/* virtual sizes (bytes) for various kernel submaps */ +#ifndef VM_KMEM_SIZE +#define VM_KMEM_SIZE (12 * 1024 * 1024) +#endif + +/* + * How many physical pages per KVA page allocated. + * min(max(VM_KMEM_SIZE, Physical memory/VM_KMEM_SIZE_SCALE), VM_KMEM_SIZE_MAX) + * is the total KVA space allocated for kmem_map. + */ +#ifndef VM_KMEM_SIZE_SCALE +#define VM_KMEM_SIZE_SCALE (3) +#endif + +/* + * Ceiling on amount of kmem_map kva space. + */ +#ifndef VM_KMEM_SIZE_MAX +#define VM_KMEM_SIZE_MAX (320 * 1024 * 1024) +#endif + +/* initial pagein size of beginning of executable file */ +#ifndef VM_INITIAL_PAGEIN +#define VM_INITIAL_PAGEIN 16 +#endif + +#endif /* _MACHINE_VMPARAM_H_ */ ==== //depot/projects/soc2006/yuanjue-xen3/src/sys/i386-xen/include/xenvar.h#2 (text+ko) ==== @@ -19,8 +19,9 @@ * FreeBSD doesn't */ - +#if 0 /*we don't need this for domU*/ #define ADD_ISA_HOLE +#endif #ifdef ADD_ISA_HOLE #define ISA_INDEX_OFFSET 1024 @@ -30,6 +31,9 @@ #define ISA_PDR_OFFSET 0 #endif +#if 1 +#define ADD_MFS_ROOT +#endif #define PFNTOMFN(i) (((unsigned long *)xen_phys_machine)[(i)]) #define MFNTOPFN(i) (xen_machine_phys[i]) From owner-p4-projects@FreeBSD.ORG Thu Aug 24 14:43:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 39B3516A4E5; Thu, 24 Aug 2006 14:43:52 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EB0EC16A4DF for ; Thu, 24 Aug 2006 14:43:51 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 89D0943D5C for ; Thu, 24 Aug 2006 14:43:51 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OEhpJM088864 for ; Thu, 24 Aug 2006 14:43:51 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OEhpVV088861 for perforce@freebsd.org; Thu, 24 Aug 2006 14:43:51 GMT (envelope-from gonzo@FreeBSD.org) Date: Thu, 24 Aug 2006 14:43:51 GMT Message-Id: <200608241443.k7OEhpVV088861@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104938 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 14:43:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=104938 Change 104938 by gonzo@gonzo_hq on 2006/08/24 14:43:46 o Fix "warning: alias definitions not supported..." warning for MIPS platform Hint by: Olivier Houchard Affected files ... .. //depot/projects/mips2/src/gnu/usr.bin/cc/cc_tools/Makefile#3 edit Differences ... ==== //depot/projects/mips2/src/gnu/usr.bin/cc/cc_tools/Makefile#3 (text+ko) ==== @@ -228,7 +228,7 @@ TARGET_INC+= freebsd-native.h TARGET_INC+= freebsd-spec.h TARGET_INC+= freebsd.h -.if ${TARGET_ARCH} == "alpha" +.if ${TARGET_ARCH} == "alpha" || ${TARGET_ARCH} == "mips" TARGET_INC+= ${GCC_CPU}/elf.h .endif .if ${TARGET_ARCH} != "i386" && ${TARGET_ARCH} != "amd64" From owner-p4-projects@FreeBSD.ORG Thu Aug 24 15:04:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E8C6116A4E6; Thu, 24 Aug 2006 15:04:22 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BFC1016A4DE for ; Thu, 24 Aug 2006 15:04:22 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 54D3243D49 for ; Thu, 24 Aug 2006 15:04:22 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OF4MNn092458 for ; Thu, 24 Aug 2006 15:04:22 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OF4IYT092398 for perforce@freebsd.org; Thu, 24 Aug 2006 15:04:18 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Aug 2006 15:04:18 GMT Message-Id: <200608241504.k7OF4IYT092398@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104941 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 15:04:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=104941 Change 104941 by rwatson@rwatson_zoo on 2006/08/24 15:03:26 Integrate TrustedBSD base from FreeBSD CVS HEAD: - IPFIREWALL_FORWARD_EXTENDED now default. - less(1) update - sendmail(8) update - fsdb(8) btime - linuxulator 2.6 support - __getpath_fromfd(), __getpath_fromaddr(). - if_sppp security fix Affected files ... .. //depot/projects/trustedbsd/base/Makefile.inc1#76 integrate .. //depot/projects/trustedbsd/base/ObsoleteFiles.inc#12 integrate .. //depot/projects/trustedbsd/base/UPDATING#69 integrate .. //depot/projects/trustedbsd/base/bin/date/netdate.c#9 integrate .. //depot/projects/trustedbsd/base/bin/df/df.c#23 integrate .. //depot/projects/trustedbsd/base/bin/ed/main.c#8 integrate .. //depot/projects/trustedbsd/base/bin/ps/ps.1#24 integrate .. //depot/projects/trustedbsd/base/contrib/gdb/FREEBSD-Xlist#4 integrate .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/powerpc/fbsd.mh#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/powerpc/fbsd.mt#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/powerpc/nm-fbsd.h#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/rs6000/nm-rs6000.h#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/rs6000/nm-rs6000ly.h#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/rs6000/rs6000.mh#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/rs6000/rs6000.mt#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/rs6000/rs6000lynx.mh#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/rs6000/rs6000lynx.mt#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/rs6000/tm-rs6000.h#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/rs6000/tm-rs6000ly.h#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/config/rs6000/xm-rs6000.h#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/ppcfbsd-nat.c#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/ppcfbsd-tdep.c#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/ppcfbsd-tdep.h#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/rs6000-nat.c#1 branch .. //depot/projects/trustedbsd/base/contrib/gdb/gdb/rs6000-tdep.c#1 branch .. //depot/projects/trustedbsd/base/contrib/less/LICENSE#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/Makefile.aut#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/Makefile.wnb#2 integrate .. //depot/projects/trustedbsd/base/contrib/less/NEWS#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/README#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/brac.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/ch.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/charset.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/charset.h#1 branch .. //depot/projects/trustedbsd/base/contrib/less/cmd.h#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/cmdbuf.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/command.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/configure#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/configure.ac#3 integrate .. //depot/projects/trustedbsd/base/contrib/less/decode.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/defines.ds#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/defines.h.in#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/defines.o2#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/defines.o9#3 integrate .. //depot/projects/trustedbsd/base/contrib/less/defines.wn#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/edit.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/filename.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/forwback.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/funcs.h#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/ifile.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/input.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/jump.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/less.h#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/less.man#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/less.nro#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/lessecho.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/lessecho.man#1 branch .. //depot/projects/trustedbsd/base/contrib/less/lessecho.nro#1 branch .. //depot/projects/trustedbsd/base/contrib/less/lesskey.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/lesskey.h#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/lesskey.man#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/lesskey.nro#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/lglob.h#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/line.c#6 integrate .. //depot/projects/trustedbsd/base/contrib/less/linenum.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/lsystem.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/main.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/mark.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/mkhelp.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/optfunc.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/option.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/option.h#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/opttbl.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/os.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/output.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/pckeys.h#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/position.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/position.h#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/prompt.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/screen.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/scrsize.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/search.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/signal.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/less/tags.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/ttyin.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/less/version.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/pnpinfo/pnpinfo.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/sendmail/FREEBSD-upgrade#21 integrate .. //depot/projects/trustedbsd/base/contrib/sendmail/RELEASE_NOTES#18 integrate .. //depot/projects/trustedbsd/base/contrib/sendmail/cf/cf/submit.cf#17 integrate .. //depot/projects/trustedbsd/base/contrib/sendmail/cf/m4/version.m4#18 integrate .. //depot/projects/trustedbsd/base/contrib/sendmail/contrib/cidrexpand#4 integrate .. //depot/projects/trustedbsd/base/contrib/sendmail/src/main.c#16 integrate .. //depot/projects/trustedbsd/base/contrib/sendmail/src/queue.c#18 integrate .. //depot/projects/trustedbsd/base/contrib/sendmail/src/srvrsmtp.c#18 integrate .. //depot/projects/trustedbsd/base/contrib/sendmail/src/version.c#18 integrate .. //depot/projects/trustedbsd/base/etc/defaults/rc.conf#58 integrate .. //depot/projects/trustedbsd/base/etc/network.subr#13 integrate .. //depot/projects/trustedbsd/base/etc/pccard_ether#15 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/Makefile#41 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/dhclient#15 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/ramdisk#5 delete .. //depot/projects/trustedbsd/base/etc/rc.d/ramdisk-own#5 delete .. //depot/projects/trustedbsd/base/etc/rc.d/sshd#9 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/ypxfrd#7 integrate .. //depot/projects/trustedbsd/base/etc/rc.initdiskless#6 integrate .. //depot/projects/trustedbsd/base/etc/rc.subr#29 integrate .. //depot/projects/trustedbsd/base/etc/sendmail/freebsd.mc#12 integrate .. //depot/projects/trustedbsd/base/etc/sendmail/freebsd.submit.mc#4 integrate .. //depot/projects/trustedbsd/base/gnu/lib/libsupc++/Makefile#5 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/Makefile#17 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/binutils/libbfd/Makefile.powerpc#5 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/gdb/Makefile#2 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/gdb/arch/alpha/Makefile#3 delete .. //depot/projects/trustedbsd/base/gnu/usr.bin/gdb/arch/alpha/config.h#3 delete .. //depot/projects/trustedbsd/base/gnu/usr.bin/gdb/arch/alpha/init.c#3 delete .. //depot/projects/trustedbsd/base/gnu/usr.bin/gdb/arch/powerpc/Makefile#1 branch .. //depot/projects/trustedbsd/base/gnu/usr.bin/gdb/arch/powerpc/config.h#1 branch .. //depot/projects/trustedbsd/base/gnu/usr.bin/gdb/arch/powerpc/init.c#1 branch .. //depot/projects/trustedbsd/base/gnu/usr.bin/gdb/kgdb/trgt_alpha.c#4 delete .. //depot/projects/trustedbsd/base/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#5 integrate .. //depot/projects/trustedbsd/base/lib/Makefile#44 integrate .. //depot/projects/trustedbsd/base/lib/csu/alpha/Makefile#6 delete .. //depot/projects/trustedbsd/base/lib/csu/alpha/crt1.c#7 delete .. //depot/projects/trustedbsd/base/lib/csu/alpha/crti.S#3 delete .. //depot/projects/trustedbsd/base/lib/csu/alpha/crtn.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/Makefile#24 integrate .. //depot/projects/trustedbsd/base/lib/libc/alpha/Makefile.inc#5 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/SYS.h#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/Symbol.map#2 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/_fpmath.h#5 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/arith.h#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/Makefile.inc#9 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/_ctx_start.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/_set_tp.c#2 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/_setjmp.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/divrem.m4#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/fabs.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/flt_rounds.c#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/fpgetmask.c#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/fpgetround.c#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/fpgetsticky.c#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/fpsetmask.c#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/fpsetround.c#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/infinity.c#6 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/makecontext.c#5 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/modf.c#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/rfork_thread.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/setjmp.S#5 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/signalcontext.c#2 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/sigsetjmp.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/net/Makefile.inc#2 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/net/byte_swap_2.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/net/byte_swap_4.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/net/htonl.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/net/htons.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/net/ntohl.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/net/ntohs.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/stdlib/Makefile.inc#2 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/string/Makefile.inc#2 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/string/bcopy.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/string/bzero.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/string/ffs.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/string/memcpy.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/string/memmove.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/Makefile.inc#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/Ovfork.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/brk.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/cerror.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/exect.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/fork.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/pipe.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/ptrace.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/sbrk.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/setlogin.S#4 delete .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/sigreturn.S#3 delete .. //depot/projects/trustedbsd/base/lib/libc/arm/net/htonl.S#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/arm/net/htons.S#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/arm/net/ntohl.S#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/arm/net/ntohs.S#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/stdio/findfp.c#10 integrate .. //depot/projects/trustedbsd/base/lib/libc_r/Makefile#11 integrate .. //depot/projects/trustedbsd/base/lib/libc_r/arch/alpha/_atomic_lock.S#3 delete .. //depot/projects/trustedbsd/base/lib/libdisk/write_alpha_disk.c#9 delete .. //depot/projects/trustedbsd/base/lib/libio/Makefile#5 delete .. //depot/projects/trustedbsd/base/lib/libio/alpha_sethae.c#3 delete .. //depot/projects/trustedbsd/base/lib/libio/bwx.c#2 delete .. //depot/projects/trustedbsd/base/lib/libio/io.c#2 delete .. //depot/projects/trustedbsd/base/lib/libio/io.h#2 delete .. //depot/projects/trustedbsd/base/lib/libio/swiz.c#2 delete .. //depot/projects/trustedbsd/base/lib/libkvm/kvm_alpha.c#3 delete .. //depot/projects/trustedbsd/base/lib/libpthread/Makefile#16 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/Makefile.inc#3 delete .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/alpha/context.S#3 delete .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/alpha/enter_uts.S#4 delete .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/alpha/pthread_md.c#3 delete .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/include/atomic_ops.h#3 delete .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/include/pthread_md.h#5 delete .. //depot/projects/trustedbsd/base/lib/libstand/Makefile#18 integrate .. //depot/projects/trustedbsd/base/lib/libstand/alpha/_setjmp.S#2 delete .. //depot/projects/trustedbsd/base/lib/libthr/Makefile#15 integrate .. //depot/projects/trustedbsd/base/lib/libthr/arch/alpha/Makefile.inc#3 delete .. //depot/projects/trustedbsd/base/lib/libthr/arch/alpha/alpha/pthread_md.c#2 delete .. //depot/projects/trustedbsd/base/lib/libthr/arch/alpha/include/pthread_md.h#2 delete .. //depot/projects/trustedbsd/base/lib/libthread_db/arch/alpha/libc_r_md.c#2 delete .. //depot/projects/trustedbsd/base/lib/libthread_db/arch/alpha/libpthread_md.c#2 delete .. //depot/projects/trustedbsd/base/lib/libutil/login.conf.5#13 integrate .. //depot/projects/trustedbsd/base/lib/msun/alpha/Makefile.inc#3 delete .. //depot/projects/trustedbsd/base/lib/msun/alpha/Symbol.map#2 delete .. //depot/projects/trustedbsd/base/lib/msun/alpha/fenv.c#3 delete .. //depot/projects/trustedbsd/base/lib/msun/alpha/fenv.h#4 delete .. //depot/projects/trustedbsd/base/lib/msun/alpha/s_copysign.S#2 delete .. //depot/projects/trustedbsd/base/lib/msun/alpha/s_copysignf.S#2 delete .. //depot/projects/trustedbsd/base/libexec/rtld-elf/alpha/Makefile.inc#3 delete .. //depot/projects/trustedbsd/base/libexec/rtld-elf/alpha/ld.so.script#3 delete .. //depot/projects/trustedbsd/base/libexec/rtld-elf/alpha/reloc.c#9 delete .. //depot/projects/trustedbsd/base/libexec/rtld-elf/alpha/rtld_machdep.h#6 delete .. //depot/projects/trustedbsd/base/libexec/rtld-elf/alpha/rtld_start.S#4 delete .. //depot/projects/trustedbsd/base/release/Makefile#77 integrate .. //depot/projects/trustedbsd/base/release/alpha/boot_crunch.conf#8 delete .. //depot/projects/trustedbsd/base/release/alpha/mkisoimages.sh#5 delete .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#106 integrate .. //depot/projects/trustedbsd/base/rescue/rescue/Makefile#19 integrate .. //depot/projects/trustedbsd/base/sbin/bsdlabel/Makefile#6 integrate .. //depot/projects/trustedbsd/base/sbin/camcontrol/camcontrol.8#11 integrate .. //depot/projects/trustedbsd/base/sbin/camcontrol/camcontrol.c#15 integrate .. //depot/projects/trustedbsd/base/sbin/dhclient/dhclient.8#4 integrate .. //depot/projects/trustedbsd/base/sbin/dhclient/dhclient.c#7 integrate .. //depot/projects/trustedbsd/base/sbin/dump/dump.8#27 integrate .. //depot/projects/trustedbsd/base/sbin/fsdb/fsdb.8#11 integrate .. //depot/projects/trustedbsd/base/sbin/fsdb/fsdb.c#14 integrate .. //depot/projects/trustedbsd/base/sbin/fsdb/fsdbutil.c#7 integrate .. //depot/projects/trustedbsd/base/sbin/ggate/Makefile#6 integrate .. //depot/projects/trustedbsd/base/sbin/ifconfig/ifmedia.c#9 integrate .. //depot/projects/trustedbsd/base/sbin/ipf/libipf/Makefile#5 integrate .. //depot/projects/trustedbsd/base/sbin/ipfw/ipfw.8#48 integrate .. //depot/projects/trustedbsd/base/sbin/ipfw/ipfw2.c#42 integrate .. //depot/projects/trustedbsd/base/sbin/ping/Makefile#5 integrate .. //depot/projects/trustedbsd/base/secure/lib/libcrypto/Makefile.inc#16 integrate .. //depot/projects/trustedbsd/base/secure/lib/libcrypto/opensslconf-alpha.h#3 delete .. //depot/projects/trustedbsd/base/share/examples/drivers/make_pseudo_driver.sh#6 integrate .. //depot/projects/trustedbsd/base/share/man/man4/amdsmb.4#2 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ixgb.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/nfsmb.4#2 integrate .. //depot/projects/trustedbsd/base/share/man/man4/uplcom.4#10 integrate .. //depot/projects/trustedbsd/base/share/man/man5/rc.conf.5#61 integrate .. //depot/projects/trustedbsd/base/share/man/man8/rc.subr.8#11 integrate .. //depot/projects/trustedbsd/base/share/man/man9/lock.9#9 integrate .. //depot/projects/trustedbsd/base/share/mk/bsd.cpu.mk#25 integrate .. //depot/projects/trustedbsd/base/share/mk/bsd.endian.mk#2 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/support.S#13 integrate .. //depot/projects/trustedbsd/base/sys/amd64/linux32/linux.h#4 integrate .. //depot/projects/trustedbsd/base/sys/amd64/linux32/linux32_machdep.c#8 integrate .. //depot/projects/trustedbsd/base/sys/amd64/linux32/linux32_sysvec.c#11 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/Makefile#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/boot0/Makefile#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/boot0iic/Makefile#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/boot0iic/doit.c#2 delete .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/boot0iic/main.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/boot0spi/Makefile#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/boot0spi/doit.c#2 delete .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/boot0spi/main.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/bootiic/loader_prompt.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/bootspi/Makefile#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/bootspi/arm_init.S#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/bootspi/arm_init.s#2 delete .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/bootspi/env_vars.c#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/bootspi/env_vars.h#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/bootspi/loader_prompt.c#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/bootspi/loader_prompt.h#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/bootspi/main.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/Makefile#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/delay.c#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/emac.c#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/emac.h#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/emac_init.c#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/lib_AT91RM9200.h#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/mci_device.c#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/mci_device.h#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/reset.c#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/sd-card.c#1 branch .. //depot/projects/trustedbsd/base/sys/boot/arm/at91/libat91/sd-card.h#1 branch .. //depot/projects/trustedbsd/base/sys/boot/common/help.common#16 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/loader.8#33 integrate .. //depot/projects/trustedbsd/base/sys/boot/ficl/arm/sysdep.c#1 branch .. //depot/projects/trustedbsd/base/sys/boot/ficl/arm/sysdep.h#1 branch .. //depot/projects/trustedbsd/base/sys/boot/forth/loader.conf#33 integrate .. //depot/projects/trustedbsd/base/sys/cam/scsi/scsi_all.c#19 integrate .. //depot/projects/trustedbsd/base/sys/cam/scsi/scsi_all.h#9 integrate .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32.h#5 integrate .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/syscalls.master#22 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_emul.c#2 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_emul.h#2 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_futex.c#2 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_misc.c#44 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_signal.c#15 integrate .. //depot/projects/trustedbsd/base/sys/compat/ndis/ntoskrnl_var.h#11 integrate .. //depot/projects/trustedbsd/base/sys/conf/NOTES#75 integrate .. //depot/projects/trustedbsd/base/sys/conf/files.pc98#55 integrate .. //depot/projects/trustedbsd/base/sys/conf/options#74 integrate .. //depot/projects/trustedbsd/base/sys/dev/arl/if_arlreg.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-chipset.c#41 integrate .. //depot/projects/trustedbsd/base/sys/dev/ath/if_athvar.h#20 integrate .. //depot/projects/trustedbsd/base/sys/dev/bge/if_bge.c#57 integrate .. //depot/projects/trustedbsd/base/sys/dev/bge/if_bgereg.h#35 integrate .. //depot/projects/trustedbsd/base/sys/dev/em/if_em.c#55 integrate .. //depot/projects/trustedbsd/base/sys/dev/iicbus/if_ic.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/iicbus/iicbb.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/ips/ips.h#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/isp_ioctl.h#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/isp_pci.c#28 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/brgphy.c#26 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/usb_port.h#21 integrate .. //depot/projects/trustedbsd/base/sys/fs/msdosfs/denode.h#9 integrate .. //depot/projects/trustedbsd/base/sys/geom/vinum/geom_vinum_raid5.h#4 integrate .. //depot/projects/trustedbsd/base/sys/i386/linux/linux.h#10 integrate .. //depot/projects/trustedbsd/base/sys/i386/linux/linux_machdep.c#22 integrate .. //depot/projects/trustedbsd/base/sys/i386/linux/linux_sysvec.c#31 integrate .. //depot/projects/trustedbsd/base/sys/kern/kern_thr.c#20 integrate .. //depot/projects/trustedbsd/base/sys/kern/sys_process.c#32 integrate .. //depot/projects/trustedbsd/base/sys/kern/syscalls.master#57 integrate .. //depot/projects/trustedbsd/base/sys/kern/uipc_socket.c#59 integrate .. //depot/projects/trustedbsd/base/sys/modules/Makefile#79 integrate .. //depot/projects/trustedbsd/base/sys/net/if_bridge.c#14 integrate .. //depot/projects/trustedbsd/base/sys/net/if_spppsubr.c#22 integrate .. //depot/projects/trustedbsd/base/sys/netinet/ip_fastfwd.c#18 integrate .. //depot/projects/trustedbsd/base/sys/netinet/ip_fw.h#26 integrate .. //depot/projects/trustedbsd/base/sys/netinet/ip_fw2.c#50 integrate .. //depot/projects/trustedbsd/base/sys/netinet/ip_input.c#50 integrate .. //depot/projects/trustedbsd/base/sys/netinet/ip_output.c#47 integrate .. //depot/projects/trustedbsd/base/sys/netsmb/smb_crypt.c#7 integrate .. //depot/projects/trustedbsd/base/sys/netsmb/smb_iod.c#14 integrate .. //depot/projects/trustedbsd/base/sys/netsmb/smb_rq.c#14 integrate .. //depot/projects/trustedbsd/base/sys/netsmb/smb_rq.h#5 integrate .. //depot/projects/trustedbsd/base/sys/nfsclient/nfs_lock.c#21 integrate .. //depot/projects/trustedbsd/base/sys/pci/agp_amd64.c#7 integrate .. //depot/projects/trustedbsd/base/sys/pci/nfsmb.c#3 integrate .. //depot/projects/trustedbsd/base/sys/sys/sysctl.h#32 integrate .. //depot/projects/trustedbsd/base/sys/ufs/ffs/ffs_snapshot.c#41 integrate .. //depot/projects/trustedbsd/base/sys/ufs/ufs/ufs_vnops.c#48 integrate .. //depot/projects/trustedbsd/base/sys/vm/vm_object.c#62 integrate .. //depot/projects/trustedbsd/base/sys/vm/vm_page.c#65 integrate .. //depot/projects/trustedbsd/base/sys/vm/vm_pageq.c#20 integrate .. //depot/projects/trustedbsd/base/sys/vm/vm_zeroidle.c#18 integrate .. //depot/projects/trustedbsd/base/tools/regression/lib/msun/Makefile#5 integrate .. //depot/projects/trustedbsd/base/usr.bin/Makefile#50 integrate .. //depot/projects/trustedbsd/base/usr.bin/calendar/calendars/calendar.freebsd#51 integrate .. //depot/projects/trustedbsd/base/usr.bin/gprof/alpha.h#3 delete .. //depot/projects/trustedbsd/base/usr.bin/gprof/gprof.h#11 integrate .. //depot/projects/trustedbsd/base/usr.bin/less/defines.h#5 integrate .. //depot/projects/trustedbsd/base/usr.bin/lessecho/Makefile#3 integrate .. //depot/projects/trustedbsd/base/usr.bin/locate/locate/locate.1#7 integrate .. //depot/projects/trustedbsd/base/usr.bin/pkill/Makefile#4 integrate .. //depot/projects/trustedbsd/base/usr.bin/truss/alpha-fbsd.c#10 delete .. //depot/projects/trustedbsd/base/usr.bin/uac/Makefile#2 delete .. //depot/projects/trustedbsd/base/usr.bin/uac/uac.1#4 delete .. //depot/projects/trustedbsd/base/usr.bin/uac/uac.c#4 delete .. //depot/projects/trustedbsd/base/usr.bin/xlint/arch/alpha/targparam.h#2 delete .. //depot/projects/trustedbsd/base/usr.sbin/Makefile#54 integrate .. //depot/projects/trustedbsd/base/usr.sbin/arp/arp.8#10 integrate .. //depot/projects/trustedbsd/base/usr.sbin/crunch/crunchide/Makefile#5 integrate .. //depot/projects/trustedbsd/base/usr.sbin/newsyslog/newsyslog.c#29 integrate .. //depot/projects/trustedbsd/base/usr.sbin/pnpinfo/Makefile#5 integrate .. //depot/projects/trustedbsd/base/usr.sbin/rpc.lockd/kern.c#13 integrate .. //depot/projects/trustedbsd/base/usr.sbin/rpc.lockd/lockd.c#9 integrate .. //depot/projects/trustedbsd/base/usr.sbin/sysinstall/devices.c#24 integrate .. //depot/projects/trustedbsd/base/usr.sbin/sysinstall/install.c#33 integrate .. //depot/projects/trustedbsd/base/usr.sbin/traceroute/Makefile#5 integrate Differences ... ==== //depot/projects/trustedbsd/base/Makefile.inc1#76 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.552 2006/08/09 11:03:06 netchild Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.553 2006/08/22 07:51:05 ru Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -926,9 +926,6 @@ .if ${MK_RESCUE} != "no" || defined(RELEASEDIR) _crunchide= usr.sbin/crunch/crunchide .endif -.if ${TARGET_ARCH} == "alpha" -_elf2exe= usr.sbin/elf2exe -.endif .if ${TARGET_ARCH} == "i386" && defined(RELEASEDIR) _kgzip= usr.sbin/kgzip .endif @@ -941,7 +938,6 @@ usr.bin/xlint/lint1 usr.bin/xlint/lint2 usr.bin/xlint/xlint \ ${_btxld} \ ${_crunchide} \ - ${_elf2exe} \ ${_kgzip} ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_tool}; \ ==== //depot/projects/trustedbsd/base/ObsoleteFiles.inc#12 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/ObsoleteFiles.inc,v 1.47 2006/08/14 18:20:36 netchild Exp $ +# $FreeBSD: src/ObsoleteFiles.inc,v 1.49 2006/08/22 11:12:09 flz Exp $ # # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and # directories (OLD_DIRS) which should get removed at an update. Recently @@ -14,6 +14,9 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20060822: ramdisk{,-own} have been replaced by mdconfig{,2} +OLD_FILES+=etc/rc.d/ramdisk +OLD_FILES+=etc/rc.d/ramdisk-own # 20060704: KAME compat file net_osdep.h removed OLD_FILES+=usr/include/net/net_osdep.h # 20060517: pcvt removed @@ -334,7 +337,7 @@ OLD_FILES+=usr/share/man/man1/sgsc.1.gz OLD_FILES+=usr/share/man/man4/i386/stl.4.gz OLD_FILES+=usr/share/man/man8/raidctl.8.gz -.if ${TARGET_ARCH} != "alpha" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "sparc64" # 20040130: libkse renamed to libpthread OLD_FILES+=usr/lib/libkse.a OLD_FILES+=usr/lib/libkse.so @@ -3066,7 +3069,7 @@ OLD_LIBS+=usr/lib/libisc.so.1 # 200408XX OLD_LIBS+=usr/lib/snmp_netgraph.so.1 -.if ${TARGET_ARCH} != "alpha" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "sparc64" # 20040130: libkse renamed to libpthread OLD_LIBS+=usr/lib/libkse.so.1 .endif ==== //depot/projects/trustedbsd/base/UPDATING#69 (text+ko) ==== @@ -21,6 +21,11 @@ developers choose to disable these features on build machines to maximize performance. +20060816: + The IPFIREWALL_FORWARD_EXTENDED option is gone and the behaviour + for IP_FIREWALL_FORWARD is now as it was before when it was first + committed and for years after. The behaviour is now ON. + 20060725: enigma(1)/crypt(1) utility has been changed on 64 bit architectures. Now it can decrypt files created from different architectures. @@ -598,4 +603,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.452 2006/07/26 16:31:10 jkim Exp $ +$FreeBSD: src/UPDATING,v 1.453 2006/08/17 00:41:05 julian Exp $ ==== //depot/projects/trustedbsd/base/bin/date/netdate.c#9 (text+ko) ==== @@ -34,7 +34,7 @@ #endif #include -__FBSDID("$FreeBSD: src/bin/date/netdate.c,v 1.18 2004/04/06 20:06:45 markm Exp $"); +__FBSDID("$FreeBSD: src/bin/date/netdate.c,v 1.19 2006/08/20 06:31:24 imp Exp $"); #include #include @@ -108,14 +108,14 @@ warnx("all ports in use"); goto bad; } + memset(&msg, 0, sizeof(msg)); msg.tsp_type = TSP_SETDATE; msg.tsp_vers = TSPVERSION; if (gethostname(hostname, sizeof(hostname))) { warn("gethostname"); goto bad; } - (void)strncpy(msg.tsp_name, hostname, sizeof(msg.tsp_name) - 1); - msg.tsp_name[sizeof(msg.tsp_name) - 1] = '\0'; + (void)strlcpy(msg.tsp_name, hostname, sizeof(msg.tsp_name)); msg.tsp_seq = htons((u_short)0); msg.tsp_time.tv_sec = htonl((u_long)tval); msg.tsp_time.tv_usec = htonl((u_long)0); ==== //depot/projects/trustedbsd/base/bin/df/df.c#23 (text+ko) ==== @@ -44,7 +44,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.64 2005/01/10 08:39:21 imp Exp $"); +__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.65 2006/08/20 06:32:40 imp Exp $"); #include #include @@ -113,7 +113,7 @@ memset(&totalbuf, 0, sizeof(totalbuf)); totalbuf.f_bsize = DEV_BSIZE; - strncpy(totalbuf.f_mntfromname, "total", MNAMELEN); + strlcpy(totalbuf.f_mntfromname, "total", MNAMELEN); vfslist = NULL; while ((ch = getopt(argc, argv, "abcgHhiklmnPt:")) != -1) switch (ch) { @@ -552,7 +552,7 @@ *str = 'n'; *(str + 1) = 'o'; for (i = 0, strptr = str + 2; i < cnt; i++, strptr++) { - strncpy(strptr, listptr[i], 32); + strlcpy(strptr, listptr[i], 32); strptr += strlen(listptr[i]); *strptr = ','; free(listptr[i]); ==== //depot/projects/trustedbsd/base/bin/ed/main.c#8 (text+ko) ==== @@ -35,7 +35,7 @@ #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/ed/main.c,v 1.28 2005/02/09 17:37:37 ru Exp $"); +__FBSDID("$FreeBSD: src/bin/ed/main.c,v 1.29 2006/08/17 23:00:33 imp Exp $"); /* * CREDITS @@ -292,7 +292,7 @@ errmsg = "invalid address"; \ return ERR; \ } \ -} while (0); +} while (0) /* next_addr: return the next line address in the command buffer */ long ==== //depot/projects/trustedbsd/base/bin/ps/ps.1#24 (text+ko) ==== @@ -27,9 +27,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 -.\" $FreeBSD: src/bin/ps/ps.1,v 1.86 2005/04/29 11:10:27 maxim Exp $ +.\" $FreeBSD: src/bin/ps/ps.1,v 1.88 2006/08/21 03:09:12 yar Exp $ .\" -.Dd March 20, 2005 +.Dd August 21, 2006 .Dt PS 1 .Os .Sh NAME @@ -179,14 +179,16 @@ .It Fl o Display information associated with the space or comma separated list of keywords specified. +The last keyword in the list may be appended with an equals +.Pq Ql = +sign and a string that spans the rest of the argument and can contain +space and comma characters. +This causes the printed header to use the specified string instead of +the standard header. Multiple keywords may also be given in the form of more than one .Fl o option. -Keywords may be appended with an equals -.Pq Ql = -sign and a string. -This causes the printed header to use the specified string instead of -the standard header. +So the header texts for multiple keywords can be changed. If all keywords have empty header texts, no header line is written. .It Fl p Display information about processes which match the specified process IDs. ==== //depot/projects/trustedbsd/base/contrib/gdb/FREEBSD-Xlist#4 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/contrib/gdb/FREEBSD-Xlist,v 1.6 2004/06/20 19:15:58 marcel Exp $ +$FreeBSD: src/contrib/gdb/FREEBSD-Xlist,v 1.7 2006/08/23 03:30:33 marcel Exp $ gdb-6.1.1/bfd/* gdb-6.1.1/config/* gdb-6.1.1/etc/* @@ -16,7 +16,6 @@ gdb-6.1.1/gdb/config/mn10300/* gdb-6.1.1/gdb/config/ns32k/* gdb-6.1.1/gdb/config/pa/* -gdb-6.1.1/gdb/config/rs6000/* gdb-6.1.1/gdb/config/sh/* gdb-6.1.1/gdb/config/v850/* gdb-6.1.1/gdb/config/vax/* @@ -34,7 +33,6 @@ gdb-6.1.1/gdb/osf-share/* gdb-6.1.1/gdb/hppa* gdb-6.1.1/gdb/rdi-share/* -gdb-6.1.1/gdb/rs6000* gdb-6.1.1/gdb/sh* gdb-6.1.1/gdb/testsuite/* gdb-6.1.1/gdb/v850* ==== //depot/projects/trustedbsd/base/contrib/less/LICENSE#4 (text+ko) ==== @@ -2,7 +2,7 @@ ------------ Less -Copyright (C) 1984-2002 Mark Nudelman +Copyright (C) 1984-2005 Mark Nudelman Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions ==== //depot/projects/trustedbsd/base/contrib/less/Makefile.aut#5 (text+ko) ==== @@ -24,9 +24,10 @@ ${SRC} regexp.c regexp.h \ COPYING INSTALL LICENSE Makefile.in Makefile.aut NEWS README \ configure configure.ac lesskey.c lessecho.c scrsize.c \ - cmd.h funcs.h lglob.h less.h lesskey.h option.h pckeys.h position.h \ + charset.h cmd.h funcs.h lglob.h less.h lesskey.h option.h pckeys.h position.h \ install.sh defines.h.in mkinstalldirs \ - less.nro lesskey.nro less.man lesskey.man less.hlp \ + less.nro less.man lesskey.nro lesskey.man lessecho.nro lessecho.man \ + less.hlp \ mkfuncs.awk mkhelp.c \ ${DISTFILES_W} @@ -55,7 +56,8 @@ clean: rm -f Makefile config.status config.log config.cache defines.h stamp-h \ - README NEWS less.nro lesskey.nro less.man lesskey.man + README NEWS \ + less.nro less.man lesskey.nro lesskey.man lessecho.nro lessecho.man distclean: clean realclean: clean @@ -78,6 +80,8 @@ ${REPLACE_VERSION} ${srcdir}/less.nro.VER ${srcdir}/lesskey.nro: ${srcdir}/lesskey.nro.VER ${srcdir}/version.c ${REPLACE_VERSION} ${srcdir}/lesskey.nro.VER +${srcdir}/lessecho.nro: ${srcdir}/lessecho.nro.VER ${srcdir}/version.c + ${REPLACE_VERSION} ${srcdir}/lessecho.nro.VER ${srcdir}/less.hlp: ${srcdir}/less.hlp.VER ${srcdir}/version.c ${REPLACE_VERSION} ${srcdir}/less.hlp.VER @@ -85,6 +89,8 @@ ${NROFF} ${srcdir}/less.nro >${srcdir}/less.man ${srcdir}/lesskey.man: ${srcdir}/lesskey.nro ${NROFF} ${srcdir}/lesskey.nro >${srcdir}/lesskey.man +${srcdir}/lessecho.man: ${srcdir}/lessecho.nro + ${NROFF} ${srcdir}/lessecho.nro >${srcdir}/lessecho.man distfiles: ${DISTFILES} ==== //depot/projects/trustedbsd/base/contrib/less/Makefile.in#5 (text+ko) ==== @@ -59,12 +59,13 @@ ${OBJ}: ${srcdir}/less.h ${srcdir}/funcs.h defines.h -install: all ${srcdir}/less.nro ${srcdir}/lesskey.nro installdirs +install: all ${srcdir}/less.nro ${srcdir}/lesskey.nro ${srcdir}/lessecho.nro installdirs ${INSTALL_PROGRAM} less ${bindir}/${binprefix}less ${INSTALL_PROGRAM} lesskey ${bindir}/${binprefix}lesskey ${INSTALL_PROGRAM} lessecho ${bindir}/${binprefix}lessecho ${INSTALL_DATA} ${srcdir}/less.nro ${mandir}/man${manext}/${manprefix}less.${manext} ${INSTALL_DATA} ${srcdir}/lesskey.nro ${mandir}/man${manext}/${manprefix}lesskey.${manext} + ${INSTALL_DATA} ${srcdir}/lessecho.nro ${mandir}/man${manext}/${manprefix}lessecho.${manext} install-strip: ${MAKE} INSTALL_PROGRAM='${INSTALL_PROGRAM} -s' install ==== //depot/projects/trustedbsd/base/contrib/less/Makefile.wnb#2 (text+ko) ==== @@ -1,20 +1,27 @@ # Makefile for less. # Windows version +# Bolarnd C++ 5.5.1 free command line tools #### Start of system configuration section. #### +# +# Borland's make knows its own location in the +# filesystem. +# CC = bcc32 -LIBDIR = d:\bc45\lib +LIBDIR = $(MAKEDIR)\..\lib CFLAGS = -O2 -w-pro -TWC -P-c -v- -d -f- -ff- -vi -LDFLAGS = /Tpe /v- /ap /c /x -LD = tlink32 +LDFLAGS = -Tpe -v- -ap -c -x -V4.0 -GF:AGGRESSIVE +LD = ilink32 LIBS = ${LIBDIR}\import32.lib ${LIBDIR}\cw32.lib #### End of system configuration section. #### +# # This rule allows us to supply the necessary -D options # in addition to whatever the user asks for. +# .c.obj: ${CC} -c -I. ${CPPFLAGS} ${CFLAGS} $< @@ -25,16 +32,20 @@ position.obj prompt.obj search.obj signal.obj tags.obj \ ttyin.obj version.obj regexp.obj -all: less lesskey +all: less lesskey lessecho +# # This is really horrible, but the command line is too long for # MS-DOS if we try to link ${OBJ}. +# less: ${OBJ} - -del lesskey.obj - ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj *.obj, $@,,${LIBS} + ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj $**, $@,,${LIBS} lesskey: lesskey.obj version.obj - ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj lesskey.obj version.obj, $@,,${LIBS} + ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj $**, $@,,${LIBS} + +lessecho: lessecho.obj version.obj + ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj $**, $@,,${LIBS} defines.h: defines.wn -del defines.h @@ -44,6 +55,16 @@ clean: -del *.obj + -del *.il? + -del *.tds + -del defines.h + +spotless: clean -del less.exe -del lesskey.exe + -del lessecho.exe + +realclean: spotless + +distclean: spotless ==== //depot/projects/trustedbsd/base/contrib/less/NEWS#5 (text+ko) ==== @@ -7,11 +7,66 @@ http://www.greenwoodsoftware.com/less You can also download the latest version of less from there. - To report bugs, suggestions or comments, send email to - bug-less@gnu.org or markn@greenwoodsoftware.com. + To report bugs, suggestions or comments, send email to bug-less@gnu.org. + +====================================================================== + + + Major changes between "less" versions 382 and 394 + +* Add history file to save search and shell command history between + invocations of less. + +* Improve behavior of history list for search and shell commands. + +* Add -K (or --quit-on-intr) option to make less exit immediately on ctrl-C. + +* Improve handling of UTF-8 files and commands, including better + line wrapping and handling double-width chars. + +* Added LESSUTFBINFMT environment variable to control display of + non-printable characters in a UTF-8 file. + +* Add --with-secure option to configure, to make it easier to + build a secure version of less. + +* Show search matches in the status column even if search highlights + are disabled via the -G option or the ESC-u command. + +* Improve performance when the file contains very long lines. + +* Add "windows" charset. + +* Add man page for lessecho. + +* Add support for erase2 character, treated same as erase. + +* Use ASCII lowercase/uppercase logic when operating on the command line. + +* Update makefile for Borland C++ 5.5.1. + +* Fix bug in calculating number of pages for %D prompt. + +* Fix bug in handling tag file error. + +* Fix obscure bug if input file is deleted while viewing help. + +* Fix bug handling filenames which include square brackets. + +* Fix possible buffer overflow in "global" tag search. + +* Fix possible buffer overflow in usage of LESSOPEN and LESSCLOSE. + +* Fix buffer overflow in reverse search. ====================================================================== + Major changes between "less" versions 381 and 382 + +* Removed some old copyrighted code. + This probably breaks OS/9 support. + +====================================================================== Major changes between "less" versions 378 and 381 ==== //depot/projects/trustedbsd/base/contrib/less/README#5 (text+ko) ==== @@ -1,7 +1,7 @@ - Less, version 381 + Less, version 394 - This is the distribution of less, version 381, released 17 Jan 2003. + This is the distribution of less, version 394, released 03 Dec 2005. This program is part of the GNU project (http://www.gnu.org). This program is free software. You may redistribute it and/or @@ -57,6 +57,10 @@ regcomp Use the V8-compatible regcomp. regcomp-local Use Henry Spencer's V8-compatible regcomp (source is supplied with less). + --with-secure + Builds a "secure" version of less, with some features disabled + to prevent users from viewing other files, accessing shell + commands, etc. 3. It is a good idea to look over the generated Makefile and defines.h and make sure they look ok. If you know of any peculiarities of @@ -67,9 +71,6 @@ -lncurses -lcurses -ltermcap -ltermlib If you wish, you may edit defines.h to remove some optional features. - If you wish to build a "secure" version of less (which disables all - features which might allow a user to do unintended things to the system - on which less is running), edit defines.h and define SECURE to 1. If you choose not to include some features in your version, you may wish to edit the manual page "less.nro" and the help page "less.hlp" to remove the descriptions of the features which you are removing. ==== //depot/projects/trustedbsd/base/contrib/less/brac.c#4 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * Copyright (C) 1984-2002 Mark Nudelman + * Copyright (C) 1984-2004 Mark Nudelman * * You may distribute under the terms of either the GNU General Public * License or the Less License, as specified in the README file. ==== //depot/projects/trustedbsd/base/contrib/less/ch.c#5 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * Copyright (C) 1984-2002 Mark Nudelman + * Copyright (C) 1984-2004 Mark Nudelman * * You may distribute under the terms of either the GNU General Public * License or the Less License, as specified in the README file. ==== //depot/projects/trustedbsd/base/contrib/less/charset.c#5 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * Copyright (C) 1984-2002 Mark Nudelman + * Copyright (C) 1984-2005 Mark Nudelman * * You may distribute under the terms of either the GNU General Public * License or the Less License, as specified in the README file. @@ -18,8 +18,11 @@ #if HAVE_LOCALE #include #include +#include #endif +#include "charset.h" + public int utf_mode = 0; /* @@ -31,23 +34,76 @@ int *p_flag; char *desc; } charsets[] = { - { "ascii", NULL, "8bcccbcc18b95.b" }, - { "dos", NULL, "8bcccbcc12bc5b223.b" }, - { "ebcdic", NULL, "5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b." }, - { "IBM-1047", NULL, "4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc191.b" }, - { "iso8859", NULL, "8bcccbcc18b95.33b." }, - { "koi8-r", NULL, "8bcccbcc18b95.b128." }, - { "next", NULL, "8bcccbcc18b95.bb125.bb" }, - { "utf-8", &utf_mode, "8bcccbcc18b." }, + { "ascii", NULL, "8bcccbcc18b95.b" }, + { "utf-8", &utf_mode, "8bcccbcc18b95.b126.bb" }, + { "iso8859", NULL, "8bcccbcc18b95.33b." }, + { "latin3", NULL, "8bcccbcc18b95.33b5.b8.b15.b4.b12.b18.b12.b." }, + { "arabic", NULL, "8bcccbcc18b95.33b.3b.7b2.13b.3b.b26.5b19.b" }, + { "greek", NULL, "8bcccbcc18b95.33b4.2b4.b3.b35.b44.b" }, + { "greek2005", NULL, "8bcccbcc18b95.33b14.b35.b44.b" }, + { "hebrew", NULL, "8bcccbcc18b95.33b.b29.32b28.2b2.b" }, + { "koi8-r", NULL, "8bcccbcc18b95.b." }, + { "KOI8-T", NULL, "8bcccbcc18b95.b8.b6.b8.b.b.5b7.3b4.b4.b3.b.b.3b." }, + { "georgianps", NULL, "8bcccbcc18b95.3b11.4b12.2b." }, + { "tcvn", NULL, "b..b...bcccbccbbb7.8b95.b48.5b." }, + { "TIS-620", NULL, "8bcccbcc18b95.b.4b.11b7.8b." }, + { "next", NULL, "8bcccbcc18b95.bb125.bb" }, + { "dos", NULL, "8bcccbcc12bc5b95.b." }, + { "windows-1251", NULL, "8bcccbcc12bc5b95.b24.b." }, + { "windows-1252", NULL, "8bcccbcc12bc5b95.b.b11.b.2b12.b." }, + { "windows-1255", NULL, "8bcccbcc12bc5b95.b.b8.b.5b9.b.4b." }, + { "ebcdic", NULL, "5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b." }, + { "IBM-1047", NULL, "4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc191.b" }, { NULL, NULL, NULL } }; +/* + * Support "locale charmap"/nl_langinfo(CODESET) values, as well as others. + */ struct cs_alias { char *name; char *oname; } cs_aliases[] = { - { "latin1", "iso8859" }, - { "latin9", "iso8859" }, + { "UTF-8", "utf-8" }, + { "ANSI_X3.4-1968", "ascii" }, + { "US-ASCII", "ascii" }, + { "latin1", "iso8859" }, + { "ISO-8859-1", "iso8859" }, + { "latin9", "iso8859" }, + { "ISO-8859-15", "iso8859" }, + { "latin2", "iso8859" }, + { "ISO-8859-2", "iso8859" }, + { "ISO-8859-3", "latin3" }, + { "latin4", "iso8859" }, + { "ISO-8859-4", "iso8859" }, + { "cyrillic", "iso8859" }, + { "ISO-8859-5", "iso8859" }, + { "ISO-8859-6", "arabic" }, + { "ISO-8859-7", "greek" }, + { "IBM9005", "greek2005" }, + { "ISO-8859-8", "hebrew" }, + { "latin5", "iso8859" }, + { "ISO-8859-9", "iso8859" }, + { "latin6", "iso8859" }, + { "ISO-8859-10", "iso8859" }, + { "latin7", "iso8859" }, + { "ISO-8859-13", "iso8859" }, + { "latin8", "iso8859" }, + { "ISO-8859-14", "iso8859" }, + { "latin10", "iso8859" }, + { "ISO-8859-16", "iso8859" }, + { "IBM437", "dos" }, + { "EBCDIC-US", "ebcdic" }, + { "IBM1047", "IBM-1047" }, + { "KOI8-R", "koi8-r" }, + { "KOI8-U", "koi8-r" }, + { "GEORGIAN-PS", "georgianps" }, + { "TCVN5712-1", "tcvn" }, + { "NEXTSTEP", "next" }, + { "windows", "windows-1252" }, /* backward compatibility */ + { "CP1251", "windows-1251" }, + { "CP1252", "windows-1252" }, + { "CP1255", "windows-1255" }, { NULL, NULL } }; @@ -56,6 +112,7 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Aug 24 15:09:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A1CF316A4DF; Thu, 24 Aug 2006 15:09:45 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7A19616A4DD for ; Thu, 24 Aug 2006 15:09:45 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5C27D43D70 for ; Thu, 24 Aug 2006 15:09:33 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OF9XMG095215 for ; Thu, 24 Aug 2006 15:09:33 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OF9TSY095212 for perforce@freebsd.org; Thu, 24 Aug 2006 15:09:29 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Aug 2006 15:09:29 GMT Message-Id: <200608241509.k7OF9TSY095212@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104943 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 15:09:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=104943 Change 104943 by rwatson@rwatson_zoo on 2006/08/24 15:09:21 Integrate TrustedBSD audit3 branch from TrustedBSD base branch; full description in @104941. Affected files ... .. //depot/projects/trustedbsd/audit3/Makefile.inc1#13 integrate .. //depot/projects/trustedbsd/audit3/ObsoleteFiles.inc#8 integrate .. //depot/projects/trustedbsd/audit3/UPDATING#13 integrate .. //depot/projects/trustedbsd/audit3/bin/date/netdate.c#2 integrate .. //depot/projects/trustedbsd/audit3/bin/df/df.c#4 integrate .. //depot/projects/trustedbsd/audit3/bin/ed/main.c#3 integrate .. //depot/projects/trustedbsd/audit3/bin/ps/ps.1#4 integrate .. //depot/projects/trustedbsd/audit3/contrib/gdb/FREEBSD-Xlist#3 integrate .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/powerpc/fbsd.mh#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/powerpc/fbsd.mt#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/powerpc/nm-fbsd.h#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/rs6000/nm-rs6000.h#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/rs6000/nm-rs6000ly.h#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/rs6000/rs6000.mh#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/rs6000/rs6000.mt#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/rs6000/rs6000lynx.mh#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/rs6000/rs6000lynx.mt#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/rs6000/tm-rs6000.h#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/rs6000/tm-rs6000ly.h#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/config/rs6000/xm-rs6000.h#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/ppcfbsd-nat.c#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/ppcfbsd-tdep.c#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/ppcfbsd-tdep.h#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/rs6000-nat.c#1 branch .. //depot/projects/trustedbsd/audit3/contrib/gdb/gdb/rs6000-tdep.c#1 branch .. //depot/projects/trustedbsd/audit3/contrib/less/LICENSE#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/Makefile.aut#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/Makefile.in#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/Makefile.wnb#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/NEWS#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/README#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/brac.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/ch.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/charset.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/charset.h#1 branch .. //depot/projects/trustedbsd/audit3/contrib/less/cmd.h#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/cmdbuf.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/command.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/configure#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/configure.ac#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/decode.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/defines.ds#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/defines.h.in#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/defines.o2#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/defines.o9#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/defines.wn#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/edit.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/filename.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/forwback.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/funcs.h#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/ifile.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/input.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/jump.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/less.h#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/less.man#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/less.nro#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/lessecho.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/lessecho.man#1 branch .. //depot/projects/trustedbsd/audit3/contrib/less/lessecho.nro#1 branch .. //depot/projects/trustedbsd/audit3/contrib/less/lesskey.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/lesskey.h#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/lesskey.man#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/lesskey.nro#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/lglob.h#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/line.c#3 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/linenum.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/lsystem.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/main.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/mark.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/mkhelp.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/optfunc.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/option.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/option.h#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/opttbl.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/os.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/output.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/pckeys.h#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/position.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/position.h#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/prompt.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/screen.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/scrsize.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/search.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/signal.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/tags.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/ttyin.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/less/version.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/pnpinfo/pnpinfo.c#2 integrate .. //depot/projects/trustedbsd/audit3/contrib/sendmail/FREEBSD-upgrade#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/sendmail/RELEASE_NOTES#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/sendmail/cf/cf/submit.cf#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/sendmail/cf/m4/version.m4#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/sendmail/contrib/cidrexpand#3 integrate .. //depot/projects/trustedbsd/audit3/contrib/sendmail/src/main.c#5 integrate .. //depot/projects/trustedbsd/audit3/contrib/sendmail/src/queue.c#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/sendmail/src/srvrsmtp.c#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/sendmail/src/version.c#7 integrate .. //depot/projects/trustedbsd/audit3/etc/defaults/rc.conf#16 integrate .. //depot/projects/trustedbsd/audit3/etc/network.subr#8 integrate .. //depot/projects/trustedbsd/audit3/etc/pccard_ether#6 integrate .. //depot/projects/trustedbsd/audit3/etc/rc.d/Makefile#14 integrate .. //depot/projects/trustedbsd/audit3/etc/rc.d/dhclient#6 integrate .. //depot/projects/trustedbsd/audit3/etc/rc.d/ramdisk#3 delete .. //depot/projects/trustedbsd/audit3/etc/rc.d/ramdisk-own#4 delete .. //depot/projects/trustedbsd/audit3/etc/rc.d/sshd#6 integrate .. //depot/projects/trustedbsd/audit3/etc/rc.d/ypxfrd#3 integrate .. //depot/projects/trustedbsd/audit3/etc/rc.initdiskless#4 integrate .. //depot/projects/trustedbsd/audit3/etc/rc.subr#10 integrate .. //depot/projects/trustedbsd/audit3/etc/sendmail/freebsd.mc#5 integrate .. //depot/projects/trustedbsd/audit3/etc/sendmail/freebsd.submit.mc#4 integrate .. //depot/projects/trustedbsd/audit3/gnu/lib/libsupc++/Makefile#4 integrate .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/Makefile#7 integrate .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/binutils/libbfd/Makefile.powerpc#3 integrate .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/arch/alpha/Makefile#3 delete .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/arch/alpha/config.h#3 delete .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/arch/alpha/init.c#3 delete .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/arch/powerpc/Makefile#1 branch .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/arch/powerpc/config.h#1 branch .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/arch/powerpc/init.c#1 branch .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/kgdb/trgt_alpha.c#4 delete .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#5 integrate .. //depot/projects/trustedbsd/audit3/lib/Makefile#13 integrate .. //depot/projects/trustedbsd/audit3/lib/csu/alpha/Makefile#2 delete .. //depot/projects/trustedbsd/audit3/lib/csu/alpha/crt1.c#3 delete .. //depot/projects/trustedbsd/audit3/lib/csu/alpha/crti.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/csu/alpha/crtn.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/Makefile#8 integrate .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/Makefile.inc#5 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/SYS.h#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/Symbol.map#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/_fpmath.h#3 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/arith.h#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/Makefile.inc#4 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/_ctx_start.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/_set_tp.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/_setjmp.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/divrem.m4#3 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/fabs.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/flt_rounds.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/fpgetmask.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/fpgetround.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/fpgetsticky.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/fpsetmask.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/fpsetround.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/infinity.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/makecontext.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/modf.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/rfork_thread.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/setjmp.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/signalcontext.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/gen/sigsetjmp.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/net/Makefile.inc#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/net/byte_swap_2.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/net/byte_swap_4.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/net/htonl.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/net/htons.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/net/ntohl.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/net/ntohs.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/stdlib/Makefile.inc#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/string/Makefile.inc#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/string/bcopy.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/string/bzero.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/string/ffs.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/string/memcpy.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/string/memmove.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/Makefile.inc#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/Ovfork.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/brk.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/cerror.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/exect.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/fork.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/pipe.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/ptrace.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/sbrk.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/setlogin.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/alpha/sys/sigreturn.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libc/arm/net/htonl.S#2 integrate .. //depot/projects/trustedbsd/audit3/lib/libc/arm/net/htons.S#2 integrate .. //depot/projects/trustedbsd/audit3/lib/libc/arm/net/ntohl.S#2 integrate .. //depot/projects/trustedbsd/audit3/lib/libc/arm/net/ntohs.S#2 integrate .. //depot/projects/trustedbsd/audit3/lib/libc/stdio/findfp.c#3 integrate .. //depot/projects/trustedbsd/audit3/lib/libc_r/Makefile#6 integrate .. //depot/projects/trustedbsd/audit3/lib/libc_r/arch/alpha/_atomic_lock.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libdisk/write_alpha_disk.c#3 delete .. //depot/projects/trustedbsd/audit3/lib/libio/Makefile#5 delete .. //depot/projects/trustedbsd/audit3/lib/libio/alpha_sethae.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libio/bwx.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libio/io.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libio/io.h#2 delete .. //depot/projects/trustedbsd/audit3/lib/libio/swiz.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libkvm/kvm_alpha.c#3 delete .. //depot/projects/trustedbsd/audit3/lib/libpthread/Makefile#6 integrate .. //depot/projects/trustedbsd/audit3/lib/libpthread/arch/alpha/Makefile.inc#2 delete .. //depot/projects/trustedbsd/audit3/lib/libpthread/arch/alpha/alpha/context.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libpthread/arch/alpha/alpha/enter_uts.S#3 delete .. //depot/projects/trustedbsd/audit3/lib/libpthread/arch/alpha/alpha/pthread_md.c#3 delete .. //depot/projects/trustedbsd/audit3/lib/libpthread/arch/alpha/include/atomic_ops.h#2 delete .. //depot/projects/trustedbsd/audit3/lib/libpthread/arch/alpha/include/pthread_md.h#3 delete .. //depot/projects/trustedbsd/audit3/lib/libstand/Makefile#6 integrate .. //depot/projects/trustedbsd/audit3/lib/libstand/alpha/_setjmp.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/libthr/Makefile#8 integrate .. //depot/projects/trustedbsd/audit3/lib/libthr/arch/alpha/Makefile.inc#3 delete .. //depot/projects/trustedbsd/audit3/lib/libthr/arch/alpha/alpha/pthread_md.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libthr/arch/alpha/include/pthread_md.h#2 delete .. //depot/projects/trustedbsd/audit3/lib/libthread_db/arch/alpha/libc_r_md.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libthread_db/arch/alpha/libpthread_md.c#2 delete .. //depot/projects/trustedbsd/audit3/lib/libutil/login.conf.5#5 integrate .. //depot/projects/trustedbsd/audit3/lib/msun/alpha/Makefile.inc#3 delete .. //depot/projects/trustedbsd/audit3/lib/msun/alpha/Symbol.map#2 delete .. //depot/projects/trustedbsd/audit3/lib/msun/alpha/fenv.c#3 delete .. //depot/projects/trustedbsd/audit3/lib/msun/alpha/fenv.h#3 delete .. //depot/projects/trustedbsd/audit3/lib/msun/alpha/s_copysign.S#2 delete .. //depot/projects/trustedbsd/audit3/lib/msun/alpha/s_copysignf.S#2 delete .. //depot/projects/trustedbsd/audit3/libexec/rtld-elf/alpha/Makefile.inc#2 delete .. //depot/projects/trustedbsd/audit3/libexec/rtld-elf/alpha/ld.so.script#2 delete .. //depot/projects/trustedbsd/audit3/libexec/rtld-elf/alpha/reloc.c#5 delete .. //depot/projects/trustedbsd/audit3/libexec/rtld-elf/alpha/rtld_machdep.h#3 delete .. //depot/projects/trustedbsd/audit3/libexec/rtld-elf/alpha/rtld_start.S#2 delete .. //depot/projects/trustedbsd/audit3/release/Makefile#11 integrate .. //depot/projects/trustedbsd/audit3/release/alpha/boot_crunch.conf#4 delete .. //depot/projects/trustedbsd/audit3/release/alpha/mkisoimages.sh#4 delete .. //depot/projects/trustedbsd/audit3/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#15 integrate .. //depot/projects/trustedbsd/audit3/rescue/rescue/Makefile#8 integrate .. //depot/projects/trustedbsd/audit3/sbin/bsdlabel/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/sbin/camcontrol/camcontrol.8#5 integrate .. //depot/projects/trustedbsd/audit3/sbin/camcontrol/camcontrol.c#3 integrate .. //depot/projects/trustedbsd/audit3/sbin/dhclient/dhclient.8#3 integrate .. //depot/projects/trustedbsd/audit3/sbin/dhclient/dhclient.c#5 integrate .. //depot/projects/trustedbsd/audit3/sbin/dump/dump.8#7 integrate .. //depot/projects/trustedbsd/audit3/sbin/fsdb/fsdb.8#5 integrate .. //depot/projects/trustedbsd/audit3/sbin/fsdb/fsdb.c#7 integrate .. //depot/projects/trustedbsd/audit3/sbin/fsdb/fsdbutil.c#3 integrate .. //depot/projects/trustedbsd/audit3/sbin/ggate/Makefile#4 integrate .. //depot/projects/trustedbsd/audit3/sbin/ifconfig/ifmedia.c#4 integrate .. //depot/projects/trustedbsd/audit3/sbin/ipf/libipf/Makefile#4 integrate .. //depot/projects/trustedbsd/audit3/sbin/ipfw/ipfw.8#12 integrate .. //depot/projects/trustedbsd/audit3/sbin/ipfw/ipfw2.c#11 integrate .. //depot/projects/trustedbsd/audit3/sbin/ping/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/secure/lib/libcrypto/Makefile.inc#5 integrate .. //depot/projects/trustedbsd/audit3/secure/lib/libcrypto/opensslconf-alpha.h#2 delete .. //depot/projects/trustedbsd/audit3/share/examples/drivers/make_pseudo_driver.sh#4 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/amdsmb.4#2 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/ixgb.4#3 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/nfsmb.4#2 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/uplcom.4#6 integrate .. //depot/projects/trustedbsd/audit3/share/man/man5/rc.conf.5#13 integrate .. //depot/projects/trustedbsd/audit3/share/man/man8/rc.subr.8#8 integrate .. //depot/projects/trustedbsd/audit3/share/man/man9/lock.9#4 integrate .. //depot/projects/trustedbsd/audit3/share/mk/bsd.cpu.mk#7 integrate .. //depot/projects/trustedbsd/audit3/share/mk/bsd.endian.mk#2 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/amd64/support.S#7 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/linux32/linux.h#4 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/linux32/linux32_machdep.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/linux32/linux32_sysvec.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/boot0/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/boot0iic/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/boot0iic/doit.c#2 delete .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/boot0iic/main.c#2 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/boot0spi/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/boot0spi/doit.c#2 delete .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/boot0spi/main.c#2 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/bootiic/loader_prompt.c#2 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/bootspi/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/bootspi/arm_init.S#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/bootspi/arm_init.s#2 delete .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/bootspi/env_vars.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/bootspi/env_vars.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/bootspi/loader_prompt.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/bootspi/loader_prompt.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/bootspi/main.c#2 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/Makefile#3 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/delay.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/emac.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/emac.h#3 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/emac_init.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/lib_AT91RM9200.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/mci_device.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/mci_device.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/reset.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/sd-card.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/arm/at91/libat91/sd-card.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/common/help.common#6 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/common/loader.8#7 integrate .. //depot/projects/trustedbsd/audit3/sys/boot/ficl/arm/sysdep.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/ficl/arm/sysdep.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/boot/forth/loader.conf#10 integrate .. //depot/projects/trustedbsd/audit3/sys/cam/scsi/scsi_all.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/cam/scsi/scsi_all.h#4 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/freebsd32/syscalls.master#21 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/linux/linux_emul.c#2 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/linux/linux_emul.h#2 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/linux/linux_futex.c#2 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/linux/linux_misc.c#10 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/linux/linux_signal.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/ndis/ntoskrnl_var.h#5 integrate .. //depot/projects/trustedbsd/audit3/sys/conf/NOTES#15 integrate .. //depot/projects/trustedbsd/audit3/sys/conf/files.pc98#10 integrate .. //depot/projects/trustedbsd/audit3/sys/conf/options#14 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/arl/if_arlreg.h#4 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ata/ata-chipset.c#15 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ath/if_athvar.h#9 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/bge/if_bge.c#13 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/bge/if_bgereg.h#12 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/em/if_em.c#15 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/iicbus/if_ic.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/iicbus/iicbb.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ips/ips.h#6 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/isp/isp_ioctl.h#7 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/isp/isp_pci.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/brgphy.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/usb/usb_port.h#6 integrate .. //depot/projects/trustedbsd/audit3/sys/fs/msdosfs/denode.h#4 integrate .. //depot/projects/trustedbsd/audit3/sys/geom/vinum/geom_vinum_raid5.h#3 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/linux/linux.h#6 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/linux/linux_machdep.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/linux/linux_sysvec.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/kern_thr.c#10 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/sys_process.c#12 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#39 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/uipc_socket.c#12 integrate .. //depot/projects/trustedbsd/audit3/sys/modules/Makefile#13 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_bridge.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_spppsubr.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/ip_fastfwd.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/ip_fw.h#8 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/ip_fw2.c#13 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/ip_input.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/ip_output.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/netsmb/smb_crypt.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/netsmb/smb_iod.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/netsmb/smb_rq.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/netsmb/smb_rq.h#3 integrate .. //depot/projects/trustedbsd/audit3/sys/nfsclient/nfs_lock.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/pci/agp_amd64.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/pci/nfsmb.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/sys/sysctl.h#9 integrate .. //depot/projects/trustedbsd/audit3/sys/ufs/ffs/ffs_snapshot.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/ufs/ufs/ufs_vnops.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/vm/vm_object.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/vm/vm_page.c#14 integrate .. //depot/projects/trustedbsd/audit3/sys/vm/vm_pageq.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/vm/vm_zeroidle.c#7 integrate .. //depot/projects/trustedbsd/audit3/tools/regression/lib/msun/Makefile#3 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/Makefile#8 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/calendar/calendars/calendar.freebsd#13 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/gprof/alpha.h#2 delete .. //depot/projects/trustedbsd/audit3/usr.bin/gprof/gprof.h#3 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/less/defines.h#2 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/lessecho/Makefile#3 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/locate/locate/locate.1#5 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/pkill/Makefile#3 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/truss/alpha-fbsd.c#4 delete .. //depot/projects/trustedbsd/audit3/usr.bin/uac/Makefile#2 delete .. //depot/projects/trustedbsd/audit3/usr.bin/uac/uac.1#3 delete .. //depot/projects/trustedbsd/audit3/usr.bin/uac/uac.c#2 delete .. //depot/projects/trustedbsd/audit3/usr.bin/xlint/arch/alpha/targparam.h#2 delete .. //depot/projects/trustedbsd/audit3/usr.sbin/Makefile#19 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/arp/arp.8#4 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/crunch/crunchide/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/newsyslog/newsyslog.c#9 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/pnpinfo/Makefile#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/rpc.lockd/kern.c#5 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/rpc.lockd/lockd.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/sysinstall/devices.c#10 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/sysinstall/install.c#7 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/traceroute/Makefile#3 integrate Differences ... ==== //depot/projects/trustedbsd/audit3/Makefile.inc1#13 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.552 2006/08/09 11:03:06 netchild Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.553 2006/08/22 07:51:05 ru Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -926,9 +926,6 @@ .if ${MK_RESCUE} != "no" || defined(RELEASEDIR) _crunchide= usr.sbin/crunch/crunchide .endif -.if ${TARGET_ARCH} == "alpha" -_elf2exe= usr.sbin/elf2exe -.endif .if ${TARGET_ARCH} == "i386" && defined(RELEASEDIR) _kgzip= usr.sbin/kgzip .endif @@ -941,7 +938,6 @@ usr.bin/xlint/lint1 usr.bin/xlint/lint2 usr.bin/xlint/xlint \ ${_btxld} \ ${_crunchide} \ - ${_elf2exe} \ ${_kgzip} ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_tool}; \ ==== //depot/projects/trustedbsd/audit3/ObsoleteFiles.inc#8 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/ObsoleteFiles.inc,v 1.47 2006/08/14 18:20:36 netchild Exp $ +# $FreeBSD: src/ObsoleteFiles.inc,v 1.49 2006/08/22 11:12:09 flz Exp $ # # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and # directories (OLD_DIRS) which should get removed at an update. Recently @@ -14,6 +14,9 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20060822: ramdisk{,-own} have been replaced by mdconfig{,2} +OLD_FILES+=etc/rc.d/ramdisk +OLD_FILES+=etc/rc.d/ramdisk-own # 20060704: KAME compat file net_osdep.h removed OLD_FILES+=usr/include/net/net_osdep.h # 20060517: pcvt removed @@ -334,7 +337,7 @@ OLD_FILES+=usr/share/man/man1/sgsc.1.gz OLD_FILES+=usr/share/man/man4/i386/stl.4.gz OLD_FILES+=usr/share/man/man8/raidctl.8.gz -.if ${TARGET_ARCH} != "alpha" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "sparc64" # 20040130: libkse renamed to libpthread OLD_FILES+=usr/lib/libkse.a OLD_FILES+=usr/lib/libkse.so @@ -3066,7 +3069,7 @@ OLD_LIBS+=usr/lib/libisc.so.1 # 200408XX OLD_LIBS+=usr/lib/snmp_netgraph.so.1 -.if ${TARGET_ARCH} != "alpha" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "sparc64" # 20040130: libkse renamed to libpthread OLD_LIBS+=usr/lib/libkse.so.1 .endif ==== //depot/projects/trustedbsd/audit3/UPDATING#13 (text+ko) ==== @@ -21,6 +21,11 @@ developers choose to disable these features on build machines to maximize performance. +20060816: + The IPFIREWALL_FORWARD_EXTENDED option is gone and the behaviour + for IP_FIREWALL_FORWARD is now as it was before when it was first + committed and for years after. The behaviour is now ON. + 20060725: enigma(1)/crypt(1) utility has been changed on 64 bit architectures. Now it can decrypt files created from different architectures. @@ -598,4 +603,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.452 2006/07/26 16:31:10 jkim Exp $ +$FreeBSD: src/UPDATING,v 1.453 2006/08/17 00:41:05 julian Exp $ ==== //depot/projects/trustedbsd/audit3/bin/date/netdate.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ #endif #include -__FBSDID("$FreeBSD: src/bin/date/netdate.c,v 1.18 2004/04/06 20:06:45 markm Exp $"); +__FBSDID("$FreeBSD: src/bin/date/netdate.c,v 1.19 2006/08/20 06:31:24 imp Exp $"); #include #include @@ -108,14 +108,14 @@ warnx("all ports in use"); goto bad; } + memset(&msg, 0, sizeof(msg)); msg.tsp_type = TSP_SETDATE; msg.tsp_vers = TSPVERSION; if (gethostname(hostname, sizeof(hostname))) { warn("gethostname"); goto bad; } - (void)strncpy(msg.tsp_name, hostname, sizeof(msg.tsp_name) - 1); - msg.tsp_name[sizeof(msg.tsp_name) - 1] = '\0'; + (void)strlcpy(msg.tsp_name, hostname, sizeof(msg.tsp_name)); msg.tsp_seq = htons((u_short)0); msg.tsp_time.tv_sec = htonl((u_long)tval); msg.tsp_time.tv_usec = htonl((u_long)0); ==== //depot/projects/trustedbsd/audit3/bin/df/df.c#4 (text+ko) ==== @@ -44,7 +44,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.64 2005/01/10 08:39:21 imp Exp $"); +__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.65 2006/08/20 06:32:40 imp Exp $"); #include #include @@ -113,7 +113,7 @@ memset(&totalbuf, 0, sizeof(totalbuf)); totalbuf.f_bsize = DEV_BSIZE; - strncpy(totalbuf.f_mntfromname, "total", MNAMELEN); + strlcpy(totalbuf.f_mntfromname, "total", MNAMELEN); vfslist = NULL; while ((ch = getopt(argc, argv, "abcgHhiklmnPt:")) != -1) switch (ch) { @@ -552,7 +552,7 @@ *str = 'n'; *(str + 1) = 'o'; for (i = 0, strptr = str + 2; i < cnt; i++, strptr++) { - strncpy(strptr, listptr[i], 32); + strlcpy(strptr, listptr[i], 32); strptr += strlen(listptr[i]); *strptr = ','; free(listptr[i]); ==== //depot/projects/trustedbsd/audit3/bin/ed/main.c#3 (text+ko) ==== @@ -35,7 +35,7 @@ #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/ed/main.c,v 1.28 2005/02/09 17:37:37 ru Exp $"); +__FBSDID("$FreeBSD: src/bin/ed/main.c,v 1.29 2006/08/17 23:00:33 imp Exp $"); /* * CREDITS @@ -292,7 +292,7 @@ errmsg = "invalid address"; \ return ERR; \ } \ -} while (0); +} while (0) /* next_addr: return the next line address in the command buffer */ long ==== //depot/projects/trustedbsd/audit3/bin/ps/ps.1#4 (text+ko) ==== @@ -27,9 +27,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 -.\" $FreeBSD: src/bin/ps/ps.1,v 1.86 2005/04/29 11:10:27 maxim Exp $ +.\" $FreeBSD: src/bin/ps/ps.1,v 1.88 2006/08/21 03:09:12 yar Exp $ .\" -.Dd March 20, 2005 +.Dd August 21, 2006 .Dt PS 1 .Os .Sh NAME @@ -179,14 +179,16 @@ .It Fl o Display information associated with the space or comma separated list of keywords specified. +The last keyword in the list may be appended with an equals +.Pq Ql = +sign and a string that spans the rest of the argument and can contain +space and comma characters. +This causes the printed header to use the specified string instead of +the standard header. Multiple keywords may also be given in the form of more than one .Fl o option. -Keywords may be appended with an equals -.Pq Ql = -sign and a string. -This causes the printed header to use the specified string instead of -the standard header. +So the header texts for multiple keywords can be changed. If all keywords have empty header texts, no header line is written. .It Fl p Display information about processes which match the specified process IDs. ==== //depot/projects/trustedbsd/audit3/contrib/gdb/FREEBSD-Xlist#3 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/contrib/gdb/FREEBSD-Xlist,v 1.6 2004/06/20 19:15:58 marcel Exp $ +$FreeBSD: src/contrib/gdb/FREEBSD-Xlist,v 1.7 2006/08/23 03:30:33 marcel Exp $ gdb-6.1.1/bfd/* gdb-6.1.1/config/* gdb-6.1.1/etc/* @@ -16,7 +16,6 @@ gdb-6.1.1/gdb/config/mn10300/* gdb-6.1.1/gdb/config/ns32k/* gdb-6.1.1/gdb/config/pa/* -gdb-6.1.1/gdb/config/rs6000/* gdb-6.1.1/gdb/config/sh/* gdb-6.1.1/gdb/config/v850/* gdb-6.1.1/gdb/config/vax/* @@ -34,7 +33,6 @@ gdb-6.1.1/gdb/osf-share/* gdb-6.1.1/gdb/hppa* gdb-6.1.1/gdb/rdi-share/* -gdb-6.1.1/gdb/rs6000* gdb-6.1.1/gdb/sh* gdb-6.1.1/gdb/testsuite/* gdb-6.1.1/gdb/v850* ==== //depot/projects/trustedbsd/audit3/contrib/less/LICENSE#2 (text+ko) ==== @@ -2,7 +2,7 @@ ------------ Less -Copyright (C) 1984-2002 Mark Nudelman +Copyright (C) 1984-2005 Mark Nudelman Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions ==== //depot/projects/trustedbsd/audit3/contrib/less/Makefile.aut#2 (text+ko) ==== @@ -24,9 +24,10 @@ ${SRC} regexp.c regexp.h \ COPYING INSTALL LICENSE Makefile.in Makefile.aut NEWS README \ configure configure.ac lesskey.c lessecho.c scrsize.c \ - cmd.h funcs.h lglob.h less.h lesskey.h option.h pckeys.h position.h \ + charset.h cmd.h funcs.h lglob.h less.h lesskey.h option.h pckeys.h position.h \ install.sh defines.h.in mkinstalldirs \ - less.nro lesskey.nro less.man lesskey.man less.hlp \ + less.nro less.man lesskey.nro lesskey.man lessecho.nro lessecho.man \ + less.hlp \ mkfuncs.awk mkhelp.c \ ${DISTFILES_W} @@ -55,7 +56,8 @@ clean: rm -f Makefile config.status config.log config.cache defines.h stamp-h \ - README NEWS less.nro lesskey.nro less.man lesskey.man + README NEWS \ + less.nro less.man lesskey.nro lesskey.man lessecho.nro lessecho.man distclean: clean realclean: clean @@ -78,6 +80,8 @@ ${REPLACE_VERSION} ${srcdir}/less.nro.VER ${srcdir}/lesskey.nro: ${srcdir}/lesskey.nro.VER ${srcdir}/version.c ${REPLACE_VERSION} ${srcdir}/lesskey.nro.VER +${srcdir}/lessecho.nro: ${srcdir}/lessecho.nro.VER ${srcdir}/version.c + ${REPLACE_VERSION} ${srcdir}/lessecho.nro.VER ${srcdir}/less.hlp: ${srcdir}/less.hlp.VER ${srcdir}/version.c ${REPLACE_VERSION} ${srcdir}/less.hlp.VER @@ -85,6 +89,8 @@ ${NROFF} ${srcdir}/less.nro >${srcdir}/less.man ${srcdir}/lesskey.man: ${srcdir}/lesskey.nro ${NROFF} ${srcdir}/lesskey.nro >${srcdir}/lesskey.man +${srcdir}/lessecho.man: ${srcdir}/lessecho.nro + ${NROFF} ${srcdir}/lessecho.nro >${srcdir}/lessecho.man distfiles: ${DISTFILES} ==== //depot/projects/trustedbsd/audit3/contrib/less/Makefile.in#2 (text+ko) ==== @@ -59,12 +59,13 @@ ${OBJ}: ${srcdir}/less.h ${srcdir}/funcs.h defines.h -install: all ${srcdir}/less.nro ${srcdir}/lesskey.nro installdirs +install: all ${srcdir}/less.nro ${srcdir}/lesskey.nro ${srcdir}/lessecho.nro installdirs ${INSTALL_PROGRAM} less ${bindir}/${binprefix}less ${INSTALL_PROGRAM} lesskey ${bindir}/${binprefix}lesskey ${INSTALL_PROGRAM} lessecho ${bindir}/${binprefix}lessecho ${INSTALL_DATA} ${srcdir}/less.nro ${mandir}/man${manext}/${manprefix}less.${manext} ${INSTALL_DATA} ${srcdir}/lesskey.nro ${mandir}/man${manext}/${manprefix}lesskey.${manext} + ${INSTALL_DATA} ${srcdir}/lessecho.nro ${mandir}/man${manext}/${manprefix}lessecho.${manext} install-strip: ${MAKE} INSTALL_PROGRAM='${INSTALL_PROGRAM} -s' install ==== //depot/projects/trustedbsd/audit3/contrib/less/Makefile.wnb#2 (text+ko) ==== @@ -1,20 +1,27 @@ # Makefile for less. # Windows version +# Bolarnd C++ 5.5.1 free command line tools #### Start of system configuration section. #### +# +# Borland's make knows its own location in the +# filesystem. +# CC = bcc32 -LIBDIR = d:\bc45\lib +LIBDIR = $(MAKEDIR)\..\lib CFLAGS = -O2 -w-pro -TWC -P-c -v- -d -f- -ff- -vi -LDFLAGS = /Tpe /v- /ap /c /x -LD = tlink32 +LDFLAGS = -Tpe -v- -ap -c -x -V4.0 -GF:AGGRESSIVE +LD = ilink32 LIBS = ${LIBDIR}\import32.lib ${LIBDIR}\cw32.lib #### End of system configuration section. #### +# # This rule allows us to supply the necessary -D options # in addition to whatever the user asks for. +# .c.obj: ${CC} -c -I. ${CPPFLAGS} ${CFLAGS} $< @@ -25,16 +32,20 @@ position.obj prompt.obj search.obj signal.obj tags.obj \ ttyin.obj version.obj regexp.obj -all: less lesskey +all: less lesskey lessecho +# # This is really horrible, but the command line is too long for # MS-DOS if we try to link ${OBJ}. +# less: ${OBJ} - -del lesskey.obj - ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj *.obj, $@,,${LIBS} + ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj $**, $@,,${LIBS} lesskey: lesskey.obj version.obj - ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj lesskey.obj version.obj, $@,,${LIBS} + ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj $**, $@,,${LIBS} + +lessecho: lessecho.obj version.obj + ${LD} ${LDFLAGS} ${LIBDIR}\c0x32.obj $**, $@,,${LIBS} defines.h: defines.wn -del defines.h @@ -44,6 +55,16 @@ clean: -del *.obj + -del *.il? + -del *.tds + -del defines.h + +spotless: clean -del less.exe -del lesskey.exe + -del lessecho.exe + +realclean: spotless + +distclean: spotless ==== //depot/projects/trustedbsd/audit3/contrib/less/NEWS#2 (text+ko) ==== @@ -7,11 +7,66 @@ http://www.greenwoodsoftware.com/less You can also download the latest version of less from there. - To report bugs, suggestions or comments, send email to - bug-less@gnu.org or markn@greenwoodsoftware.com. + To report bugs, suggestions or comments, send email to bug-less@gnu.org. + +====================================================================== + + + Major changes between "less" versions 382 and 394 + +* Add history file to save search and shell command history between + invocations of less. + +* Improve behavior of history list for search and shell commands. + +* Add -K (or --quit-on-intr) option to make less exit immediately on ctrl-C. + +* Improve handling of UTF-8 files and commands, including better + line wrapping and handling double-width chars. + +* Added LESSUTFBINFMT environment variable to control display of + non-printable characters in a UTF-8 file. + +* Add --with-secure option to configure, to make it easier to + build a secure version of less. + +* Show search matches in the status column even if search highlights + are disabled via the -G option or the ESC-u command. + +* Improve performance when the file contains very long lines. + +* Add "windows" charset. + +* Add man page for lessecho. + +* Add support for erase2 character, treated same as erase. + +* Use ASCII lowercase/uppercase logic when operating on the command line. + +* Update makefile for Borland C++ 5.5.1. + +* Fix bug in calculating number of pages for %D prompt. + +* Fix bug in handling tag file error. + +* Fix obscure bug if input file is deleted while viewing help. + +* Fix bug handling filenames which include square brackets. + +* Fix possible buffer overflow in "global" tag search. + +* Fix possible buffer overflow in usage of LESSOPEN and LESSCLOSE. + +* Fix buffer overflow in reverse search. ====================================================================== + Major changes between "less" versions 381 and 382 + +* Removed some old copyrighted code. + This probably breaks OS/9 support. + +====================================================================== Major changes between "less" versions 378 and 381 ==== //depot/projects/trustedbsd/audit3/contrib/less/README#2 (text+ko) ==== @@ -1,7 +1,7 @@ - Less, version 381 + Less, version 394 - This is the distribution of less, version 381, released 17 Jan 2003. + This is the distribution of less, version 394, released 03 Dec 2005. This program is part of the GNU project (http://www.gnu.org). This program is free software. You may redistribute it and/or @@ -57,6 +57,10 @@ regcomp Use the V8-compatible regcomp. regcomp-local Use Henry Spencer's V8-compatible regcomp (source is supplied with less). + --with-secure + Builds a "secure" version of less, with some features disabled + to prevent users from viewing other files, accessing shell + commands, etc. 3. It is a good idea to look over the generated Makefile and defines.h and make sure they look ok. If you know of any peculiarities of @@ -67,9 +71,6 @@ -lncurses -lcurses -ltermcap -ltermlib If you wish, you may edit defines.h to remove some optional features. - If you wish to build a "secure" version of less (which disables all - features which might allow a user to do unintended things to the system - on which less is running), edit defines.h and define SECURE to 1. If you choose not to include some features in your version, you may wish to edit the manual page "less.nro" and the help page "less.hlp" to remove the descriptions of the features which you are removing. ==== //depot/projects/trustedbsd/audit3/contrib/less/brac.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * Copyright (C) 1984-2002 Mark Nudelman + * Copyright (C) 1984-2004 Mark Nudelman * * You may distribute under the terms of either the GNU General Public * License or the Less License, as specified in the README file. ==== //depot/projects/trustedbsd/audit3/contrib/less/ch.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * Copyright (C) 1984-2002 Mark Nudelman + * Copyright (C) 1984-2004 Mark Nudelman * * You may distribute under the terms of either the GNU General Public * License or the Less License, as specified in the README file. ==== //depot/projects/trustedbsd/audit3/contrib/less/charset.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * Copyright (C) 1984-2002 Mark Nudelman + * Copyright (C) 1984-2005 Mark Nudelman * * You may distribute under the terms of either the GNU General Public * License or the Less License, as specified in the README file. @@ -18,8 +18,11 @@ #if HAVE_LOCALE #include #include +#include #endif +#include "charset.h" + public int utf_mode = 0; /* @@ -31,23 +34,76 @@ int *p_flag; char *desc; } charsets[] = { - { "ascii", NULL, "8bcccbcc18b95.b" }, - { "dos", NULL, "8bcccbcc12bc5b223.b" }, - { "ebcdic", NULL, "5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b." }, - { "IBM-1047", NULL, "4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc191.b" }, - { "iso8859", NULL, "8bcccbcc18b95.33b." }, - { "koi8-r", NULL, "8bcccbcc18b95.b128." }, - { "next", NULL, "8bcccbcc18b95.bb125.bb" }, - { "utf-8", &utf_mode, "8bcccbcc18b." }, + { "ascii", NULL, "8bcccbcc18b95.b" }, + { "utf-8", &utf_mode, "8bcccbcc18b95.b126.bb" }, + { "iso8859", NULL, "8bcccbcc18b95.33b." }, + { "latin3", NULL, "8bcccbcc18b95.33b5.b8.b15.b4.b12.b18.b12.b." }, + { "arabic", NULL, "8bcccbcc18b95.33b.3b.7b2.13b.3b.b26.5b19.b" }, + { "greek", NULL, "8bcccbcc18b95.33b4.2b4.b3.b35.b44.b" }, + { "greek2005", NULL, "8bcccbcc18b95.33b14.b35.b44.b" }, + { "hebrew", NULL, "8bcccbcc18b95.33b.b29.32b28.2b2.b" }, + { "koi8-r", NULL, "8bcccbcc18b95.b." }, + { "KOI8-T", NULL, "8bcccbcc18b95.b8.b6.b8.b.b.5b7.3b4.b4.b3.b.b.3b." }, + { "georgianps", NULL, "8bcccbcc18b95.3b11.4b12.2b." }, + { "tcvn", NULL, "b..b...bcccbccbbb7.8b95.b48.5b." }, + { "TIS-620", NULL, "8bcccbcc18b95.b.4b.11b7.8b." }, + { "next", NULL, "8bcccbcc18b95.bb125.bb" }, + { "dos", NULL, "8bcccbcc12bc5b95.b." }, + { "windows-1251", NULL, "8bcccbcc12bc5b95.b24.b." }, + { "windows-1252", NULL, "8bcccbcc12bc5b95.b.b11.b.2b12.b." }, + { "windows-1255", NULL, "8bcccbcc12bc5b95.b.b8.b.5b9.b.4b." }, + { "ebcdic", NULL, "5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b." }, + { "IBM-1047", NULL, "4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc191.b" }, { NULL, NULL, NULL } }; +/* + * Support "locale charmap"/nl_langinfo(CODESET) values, as well as others. + */ struct cs_alias { char *name; char *oname; } cs_aliases[] = { - { "latin1", "iso8859" }, - { "latin9", "iso8859" }, + { "UTF-8", "utf-8" }, + { "ANSI_X3.4-1968", "ascii" }, + { "US-ASCII", "ascii" }, + { "latin1", "iso8859" }, + { "ISO-8859-1", "iso8859" }, + { "latin9", "iso8859" }, + { "ISO-8859-15", "iso8859" }, + { "latin2", "iso8859" }, + { "ISO-8859-2", "iso8859" }, + { "ISO-8859-3", "latin3" }, + { "latin4", "iso8859" }, + { "ISO-8859-4", "iso8859" }, + { "cyrillic", "iso8859" }, + { "ISO-8859-5", "iso8859" }, + { "ISO-8859-6", "arabic" }, + { "ISO-8859-7", "greek" }, + { "IBM9005", "greek2005" }, + { "ISO-8859-8", "hebrew" }, + { "latin5", "iso8859" }, + { "ISO-8859-9", "iso8859" }, + { "latin6", "iso8859" }, + { "ISO-8859-10", "iso8859" }, + { "latin7", "iso8859" }, + { "ISO-8859-13", "iso8859" }, + { "latin8", "iso8859" }, + { "ISO-8859-14", "iso8859" }, + { "latin10", "iso8859" }, + { "ISO-8859-16", "iso8859" }, + { "IBM437", "dos" }, + { "EBCDIC-US", "ebcdic" }, + { "IBM1047", "IBM-1047" }, + { "KOI8-R", "koi8-r" }, + { "KOI8-U", "koi8-r" }, + { "GEORGIAN-PS", "georgianps" }, + { "TCVN5712-1", "tcvn" }, + { "NEXTSTEP", "next" }, + { "windows", "windows-1252" }, /* backward compatibility */ + { "CP1251", "windows-1251" }, + { "CP1252", "windows-1252" }, + { "CP1255", "windows-1255" }, { NULL, NULL } }; @@ -56,6 +112,7 @@ static char chardef[256]; static char *binfmt = NULL; +static char *utfbinfmt = NULL; public int binattr = AT_STANDOUT; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Aug 24 16:14:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 140CD16A4E5; Thu, 24 Aug 2006 16:14:59 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C9B5516A4DA for ; Thu, 24 Aug 2006 16:14:58 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5F3C343D4C for ; Thu, 24 Aug 2006 16:14:58 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OGEwNi003526 for ; Thu, 24 Aug 2006 16:14:58 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OGEvg5003523 for perforce@freebsd.org; Thu, 24 Aug 2006 16:14:57 GMT (envelope-from piso@freebsd.org) Date: Thu, 24 Aug 2006 16:14:57 GMT Message-Id: <200608241614.k7OGEvg5003523@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104950 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 16:14:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=104950 Change 104950 by piso@piso_newluxor on 2006/08/24 16:14:30 IFC Affected files ... .. //depot/projects/soc2005/libalias/contrib/gdb/FREEBSD-Xlist#2 integrate .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/powerpc/fbsd.mh#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/powerpc/fbsd.mt#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/powerpc/nm-fbsd.h#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/nm-rs6000.h#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/nm-rs6000ly.h#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/rs6000.mh#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/rs6000.mt#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/rs6000lynx.mh#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/rs6000lynx.mt#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/tm-rs6000.h#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/tm-rs6000ly.h#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/config/rs6000/xm-rs6000.h#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/ppcfbsd-nat.c#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/ppcfbsd-tdep.c#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/ppcfbsd-tdep.h#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/rs6000-nat.c#1 branch .. //depot/projects/soc2005/libalias/contrib/gdb/gdb/rs6000-tdep.c#1 branch .. //depot/projects/soc2005/libalias/gnu/usr.bin/binutils/libbfd/Makefile.powerpc#2 integrate .. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/Makefile#2 integrate .. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/alpha/Makefile#2 delete .. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/alpha/config.h#2 delete .. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/alpha/init.c#2 delete .. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/powerpc/Makefile#1 branch .. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/powerpc/config.h#1 branch .. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/arch/powerpc/init.c#1 branch .. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/kgdb/trgt_alpha.c#2 delete .. //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#2 integrate .. //depot/projects/soc2005/libalias/lib/libdisk/write_alpha_disk.c#2 delete .. //depot/projects/soc2005/libalias/lib/libkvm/kvm_alpha.c#2 delete .. //depot/projects/soc2005/libalias/lib/libthread_db/arch/alpha/libc_r_md.c#2 delete .. //depot/projects/soc2005/libalias/lib/libthread_db/arch/alpha/libpthread_md.c#2 delete .. //depot/projects/soc2005/libalias/lib/libutil/login.conf.5#2 integrate .. //depot/projects/soc2005/libalias/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#5 integrate .. //depot/projects/soc2005/libalias/sbin/fsdb/fsdb.8#2 integrate .. //depot/projects/soc2005/libalias/sbin/fsdb/fsdb.c#2 integrate .. //depot/projects/soc2005/libalias/sbin/fsdb/fsdbutil.c#2 integrate .. //depot/projects/soc2005/libalias/sbin/ifconfig/ifmedia.c#2 integrate .. //depot/projects/soc2005/libalias/sbin/ipfw/ipfw2.c#5 integrate .. //depot/projects/soc2005/libalias/share/examples/drivers/make_pseudo_driver.sh#3 integrate .. //depot/projects/soc2005/libalias/sys/conf/NOTES#5 integrate .. //depot/projects/soc2005/libalias/sys/dev/bge/if_bge.c#5 integrate .. //depot/projects/soc2005/libalias/sys/dev/bge/if_bgereg.h#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/mii/brgphy.c#3 integrate .. //depot/projects/soc2005/libalias/sys/kern/kern_thr.c#3 integrate .. //depot/projects/soc2005/libalias/sys/net/if_spppsubr.c#3 integrate .. //depot/projects/soc2005/libalias/usr.bin/gprof/alpha.h#2 delete .. //depot/projects/soc2005/libalias/usr.bin/gprof/gprof.h#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/truss/alpha-fbsd.c#2 delete .. //depot/projects/soc2005/libalias/usr.bin/xlint/arch/alpha/targparam.h#2 delete .. //depot/projects/soc2005/libalias/usr.sbin/rpc.lockd/lockd.c#2 integrate Differences ... ==== //depot/projects/soc2005/libalias/contrib/gdb/FREEBSD-Xlist#2 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/contrib/gdb/FREEBSD-Xlist,v 1.6 2004/06/20 19:15:58 marcel Exp $ +$FreeBSD: src/contrib/gdb/FREEBSD-Xlist,v 1.7 2006/08/23 03:30:33 marcel Exp $ gdb-6.1.1/bfd/* gdb-6.1.1/config/* gdb-6.1.1/etc/* @@ -16,7 +16,6 @@ gdb-6.1.1/gdb/config/mn10300/* gdb-6.1.1/gdb/config/ns32k/* gdb-6.1.1/gdb/config/pa/* -gdb-6.1.1/gdb/config/rs6000/* gdb-6.1.1/gdb/config/sh/* gdb-6.1.1/gdb/config/v850/* gdb-6.1.1/gdb/config/vax/* @@ -34,7 +33,6 @@ gdb-6.1.1/gdb/osf-share/* gdb-6.1.1/gdb/hppa* gdb-6.1.1/gdb/rdi-share/* -gdb-6.1.1/gdb/rs6000* gdb-6.1.1/gdb/sh* gdb-6.1.1/gdb/testsuite/* gdb-6.1.1/gdb/v850* ==== //depot/projects/soc2005/libalias/gnu/usr.bin/binutils/libbfd/Makefile.powerpc#2 (text+ko) ==== @@ -1,4 +1,6 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile.powerpc,v 1.8 2004/07/08 17:05:32 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile.powerpc,v 1.9 2006/08/24 02:36:21 marcel Exp $ + +ARCHS+= rs6000 DEFAULT_VECTOR= bfd_elf32_powerpc_vec ==== //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/Makefile#2 (text+ko) ==== @@ -1,5 +1,9 @@ -# $FreeBSD: src/gnu/usr.bin/gdb/Makefile,v 1.9 2004/07/25 05:32:50 marcel Exp $ +# $FreeBSD: src/gnu/usr.bin/gdb/Makefile,v 1.10 2006/08/24 02:44:58 marcel Exp $ + +SUBDIR= doc libgdb gdb gdbtui -SUBDIR= doc libgdb gdb gdbtui kgdb +.if ${MACHINE_ARCH} != "powerpc" +SUBDIR+= kgdb +.endif .include ==== //depot/projects/soc2005/libalias/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/gnu/usr.bin/gdb/kgdb/trgt_amd64.c,v 1.6 2005/09/28 07:40:27 peter Exp $"); +__FBSDID("$FreeBSD: src/gnu/usr.bin/gdb/kgdb/trgt_amd64.c,v 1.7 2006/08/23 19:16:17 jhb Exp $"); #include #include @@ -149,15 +149,12 @@ *lvalp = not_lval; *realnump = -1; - cache = kgdb_trgt_frame_cache(next_frame, this_cache); - if (cache->pc == 0) - return; - ofs = (regnum >= AMD64_RAX_REGNUM && regnum <= AMD64_EFLAGS_REGNUM + 2) ? kgdb_trgt_frame_offset[regnum] : -1; if (ofs == -1) return; + cache = kgdb_trgt_frame_cache(next_frame, this_cache); *addrp = cache->sp + ofs; *lvalp = lval_memory; target_read_memory(*addrp, valuep, regsz); @@ -176,8 +173,6 @@ CORE_ADDR pc; pc = frame_pc_unwind(next_frame); - if (pc == 0) - return (&kgdb_trgt_trapframe_unwind); pname = NULL; find_pc_partial_function(pc, &pname, NULL, NULL); if (pname == NULL) ==== //depot/projects/soc2005/libalias/lib/libutil/login.conf.5#2 (text+ko) ==== @@ -17,9 +17,9 @@ .\" 5. Modifications may be freely made to this file providing the above .\" conditions are met. .\" -.\" $FreeBSD: src/lib/libutil/login.conf.5,v 1.57 2006/04/19 17:46:27 brueffer Exp $ +.\" $FreeBSD: src/lib/libutil/login.conf.5,v 1.58 2006/08/23 09:54:46 yar Exp $ .\" -.Dd April 19, 2006 +.Dd August 23, 2006 .Dt LOGIN.CONF 5 .Os .Sh NAME @@ -373,6 +373,11 @@ .It Sy "Name Type Notes Description .It "accounted bool false Enable session time accounting for all users in this class. +.It "auth list passwd Allowed authentication styles. +The first item is the default style. +.It "auth-" Ns Ar type Ta "list Allowed authentication styles for the +authentication +.Ar type . .It "autodelete time Time after expiry when account is auto-deleted. .It "bootfull bool false Enable 'boot only if ttygroup is full' strategy when terminating sessions. ==== //depot/projects/soc2005/libalias/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#5 (text+ko) ==== @@ -3,7 +3,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.962 2006/08/21 00:59:40 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.964 2006/08/24 14:45:56 bmah Exp $ 2000 @@ -350,9 +350,9 @@ implemented. &os; now runs on the Xbox, whose architecture is nearly identical - to the i386. For details of the latest development, - see - and . + to the i386. For details of the latest development, see + . + &merged; Boot Loader Changes @@ -767,6 +767,13 @@ for example, by using tagged rule option. For more details, see &man.ipfw.8;. + The IPFIREWALL_FORWARD_EXTENDED kernel + option has been removed. This option was used to permit + &man.ipfw.4; to redirect packets with local destinations. + This behavior is now always enabled when + the IPFIREWALL_FORWARD kernel option is + enabled. &merged; + The ip6fw(8) packet filter has been removed. Since &man.ipfw.4; has gained IPv6 support, it should be used instead. Please note that some rules might need to be adjusted. @@ -1084,6 +1091,10 @@ flag, which causes it to ignore files and directories with the nodump flag set. &merged; + The &man.fsdb.8; utility now supports changing the birth + time of files on UFS2 file systems using the new + the btime command. + The &man.find.1; program now supports and other related primaries, which can be used to create expressions based on a file's creation time. &merged; @@ -1557,7 +1568,7 @@ &merged; IPFilter has been updated from - 4.1.8 to 4.1.13. + 4.1.8 to 4.1.13. &merged; less has been updated from v381 to v394. @@ -1570,10 +1581,7 @@ &merged; sendmail has been updated from - 8.13.4 to 8.13.6. &merged; - - sendmail has been updated from - 8.13.6 to 8.13.8. + 8.13.4 to 8.13.8. &merged; The timezone database has been updated from the tzdata2005l release to the ==== //depot/projects/soc2005/libalias/sbin/fsdb/fsdb.8#2 (text+ko) ==== @@ -26,9 +26,9 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/sbin/fsdb/fsdb.8,v 1.29 2006/06/02 12:55:26 maxim Exp $ +.\" $FreeBSD: src/sbin/fsdb/fsdb.8,v 1.31 2006/08/24 09:14:02 ceri Exp $ .\" -.Dd June 2, 2006 +.Dd August 24, 2006 .Dt FSDB 8 .Os .Sh NAME @@ -204,11 +204,12 @@ Change the generation number of the current inode to .Ar gen . .Pp +.It Cm btime Ar time .It Cm mtime Ar time .It Cm ctime Ar time .It Cm atime Ar time -Change the modification, change, or access time (respectively) on the -current inode to +Change the creation (birth), modification, change, or access +time (respectively) on the current inode to .Ar time . .Ar Time should be in the format @@ -217,11 +218,15 @@ .Em nsec is an optional nanosecond specification. If no nanoseconds are specified, the +.Va birthnsec , .Va mtimensec , .Va ctimensec , or .Va atimensec field will be set to zero. +Note that +.Cm btime +is available on UFS2 file systems only. .Pp .It Cm quit , q , exit , Em Exit the program. ==== //depot/projects/soc2005/libalias/sbin/fsdb/fsdb.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/sbin/fsdb/fsdb.c,v 1.33 2006/06/02 12:55:26 maxim Exp $"; + "$FreeBSD: src/sbin/fsdb/fsdb.c,v 1.34 2006/08/23 22:44:00 ceri Exp $"; #endif /* not lint */ #include @@ -148,6 +148,7 @@ CMDFUNC(chowner); /* change owner */ CMDFUNC(chgroup); /* Change group */ CMDFUNC(back); /* pop back to last ino */ +CMDFUNC(chbtime); /* Change btime */ CMDFUNC(chmtime); /* Change mtime */ CMDFUNC(chctime); /* Change ctime */ CMDFUNC(chatime); /* Change atime */ @@ -182,6 +183,7 @@ { "chgrp", "Change group of current inode to GROUP", 2, 2, FL_WR, chgroup }, { "chflags", "Change flags of current inode to FLAGS", 2, 2, FL_WR, chaflags }, { "chgen", "Change generation number of current inode to GEN", 2, 2, FL_WR, chgen }, + { "btime", "Change btime of current inode to BTIME", 2, 2, FL_WR, chbtime }, { "mtime", "Change mtime of current inode to MTIME", 2, 2, FL_WR, chmtime }, { "ctime", "Change ctime of current inode to CTIME", 2, 2, FL_WR, chctime }, { "atime", "Change atime of current inode to ATIME", 2, 2, FL_WR, chatime }, @@ -1132,6 +1134,22 @@ return 0; } +CMDFUNCSTART(chbtime) +{ + time_t secs; + int32_t nsecs; + + if (dotime(argv[1], &secs, &nsecs)) + return 1; + if (sblock.fs_magic == FS_UFS1_MAGIC) + return 1; + curinode->dp2.di_birthtime = _time_to_time64(secs); + curinode->dp2.di_birthnsec = nsecs; + inodirty(); + printactive(0); + return 0; +} + CMDFUNCSTART(chmtime) { time_t secs; ==== //depot/projects/soc2005/libalias/sbin/fsdb/fsdbutil.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/sbin/fsdb/fsdbutil.c,v 1.19 2006/04/21 20:33:16 maxim Exp $"; + "$FreeBSD: src/sbin/fsdb/fsdbutil.c,v 1.20 2006/08/23 22:44:00 ceri Exp $"; #endif /* not lint */ #include @@ -156,6 +156,12 @@ } printf("I=%lu MODE=%o SIZE=%ju", (u_long)inum, DIP(dp, di_mode), (uintmax_t)DIP(dp, di_size)); + if (sblock.fs_magic != FS_UFS1_MAGIC) { + t = _time64_to_time(dp->dp2.di_birthtime); + p = ctime(&t); + printf("\n\tBTIME=%15.15s %4.4s [%d nsec]", &p[4], &p[20], + dp->dp2.di_birthnsec); + } if (sblock.fs_magic == FS_UFS1_MAGIC) t = _time32_to_time(dp->dp1.di_mtime); else ==== //depot/projects/soc2005/libalias/sbin/ifconfig/ifmedia.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /* $NetBSD: ifconfig.c,v 1.34 1997/04/21 01:17:58 lukem Exp $ */ -/* $FreeBSD: src/sbin/ifconfig/ifmedia.c,v 1.20 2006/01/11 22:37:59 ambrisko Exp $ */ +/* $FreeBSD: src/sbin/ifconfig/ifmedia.c,v 1.21 2006/08/22 23:49:36 thomas Exp $ */ /* * Copyright (c) 1997 Jason R. Thorpe. @@ -146,6 +146,7 @@ printf("\tstatus: "); switch (IFM_TYPE(ifmr.ifm_active)) { case IFM_ETHER: + case IFM_ATM: if (ifmr.ifm_status & IFM_ACTIVE) printf("active"); else @@ -160,13 +161,6 @@ printf("no ring"); break; - case IFM_ATM: - if (ifmr.ifm_status & IFM_ACTIVE) - printf("active"); - else - printf("no carrier"); - break; - case IFM_IEEE80211: /* XXX: Different value for adhoc? */ if (ifmr.ifm_status & IFM_ACTIVE) @@ -692,14 +686,11 @@ /* Find subtype. */ desc = get_subtype_desc(ifmw, ttos); - if (desc != NULL) - goto got_subtype; + if (desc == NULL) { + printf(""); + return; + } - /* Falling to here means unknown subtype. */ - printf(""); - return; - - got_subtype: if (print_toptype) putchar(' '); @@ -750,14 +741,11 @@ /* Find subtype. */ desc = get_subtype_desc(ifmw, ttos); - if (desc != NULL) - goto got_subtype; - - /* Falling to here means unknown subtype. */ - printf(""); - return; + if (desc == NULL) { + printf(""); + return; + } - got_subtype: printf("media %s", desc->ifmt_string); desc = get_mode_desc(ifmw, ttos); ==== //depot/projects/soc2005/libalias/sbin/ipfw/ipfw2.c#5 (text+ko) ==== @@ -17,7 +17,7 @@ * * NEW command line interface for IP firewall facility * - * $FreeBSD: src/sbin/ipfw/ipfw2.c,v 1.95 2006/08/20 20:10:36 dwmalone Exp $ + * $FreeBSD: src/sbin/ipfw/ipfw2.c,v 1.96 2006/08/23 14:29:18 dwmalone Exp $ */ #include @@ -4218,7 +4218,8 @@ end++; p.bandwidth *= 1000000; } - if (*end == 'B' || + if ((*end == 'B' && + _substrcmp2(end, "Bi", "Bit/s") != 0) || _substrcmp2(end, "by", "bytes") == 0) p.bandwidth *= 8; if (p.bandwidth < 0) ==== //depot/projects/soc2005/libalias/share/examples/drivers/make_pseudo_driver.sh#3 (text+ko) ==== @@ -6,7 +6,7 @@ # # Trust me, RUN THIS SCRIPT :) # -# $FreeBSD: src/share/examples/drivers/make_pseudo_driver.sh,v 1.12 2006/08/09 21:23:42 rik Exp $ +# $FreeBSD: src/share/examples/drivers/make_pseudo_driver.sh,v 1.13 2006/08/23 23:51:29 rik Exp $ # #-------cut here------------------ @@ -70,7 +70,7 @@ mkdir ${TOP}/modules/${1} cat >${TOP}/conf/files.${UPPER} <${TOP}/i386/conf/${UPPER} <. KTR_MASK defines the # initial value of the ktr_mask variable which determines at runtime # what events to trace. KTR_CPUMASK determines which CPU's log -# events, with bit X corresponding to cpu X. KTR_VERBOSE enables +# events, with bit X corresponding to CPU X. KTR_VERBOSE enables # dumping of KTR events to the console by default. This functionality # can be toggled via the debug.ktr_verbose sysctl and defaults to off # if KTR_VERBOSE is not defined. @@ -374,7 +374,7 @@ options KTR_VERBOSE # -# ALQ(9) is a facilty for the asynchronous queuing of records from the kernel +# ALQ(9) is a facility for the asynchronous queuing of records from the kernel # to a vnode, and is employed by services such as KTR(4) to produce trace # files based on a kernel event stream. Records are written asynchronously # in a worker thread. @@ -725,7 +725,7 @@ # crafting the ruleset. # # IPSTEALTH enables code to support stealth forwarding (i.e., forwarding -# packets without touching the ttl). This can be useful to hide firewalls +# packets without touching the TTL). This can be useful to hide firewalls # from traceroute and similar tools. # # TCPDEBUG enables code which keeps traces of the TCP state machine @@ -973,7 +973,7 @@ ##################################################################### # POSIX P1003.1B -# Real time extensions added in the 1993 Posix +# Real time extensions added in the 1993 POSIX # _KPOSIX_PRIORITY_SCHEDULING: Build in _POSIX_PRIORITY_SCHEDULING options _KPOSIX_PRIORITY_SCHEDULING @@ -1295,7 +1295,7 @@ device star_saver device warp_saver -# The syscons console driver (sco color console compatible). +# The syscons console driver (SCO color console compatible). device sc hint.sc.0.at="isa" options MAXCONS=16 # number of virtual consoles @@ -1947,9 +1947,9 @@ # snd_mss: Microsoft Sound System ISA PnP/non-PnP. # snd_neomagic: Neomagic 256 AV/ZX PCI. # snd_sb16: Creative SoundBlaster16, to be used in -# conjuction with snd_sbc. +# conjunction with snd_sbc. # snd_sb8: Creative SoundBlaster (pre-16), to be used in -# conjuction with snd_sbc. +# conjunction with snd_sbc. # snd_sbc: Creative SoundBlaster ISA PnP/non-PnP. # Supports ESS and Avance ISA chips as well. # snd_solo: ESS Solo-1x PCI. @@ -1993,7 +1993,7 @@ device snd_vibes device snd_uaudio -# For non-pnp sound cards: +# For non-PnP sound cards: hint.pcm.0.at="isa" hint.pcm.0.irq="10" hint.pcm.0.drq="1" @@ -2074,7 +2074,7 @@ device scd hint.scd.0.at="isa" hint.scd.0.port="0x230" -device joy # PnP aware, hints for nonpnp only +device joy # PnP aware, hints for non-PnP only hint.joy.0.at="isa" hint.joy.0.port="0x201" device rc @@ -2341,7 +2341,7 @@ device umodem # USB mouse device ums -# Diamond Rio 500 Mp3 player +# Diamond Rio 500 MP3 player device urio # USB scanners device uscanner @@ -2421,7 +2421,7 @@ device sbp # SCSI over Firewire (Requires scbus and da) device sbp_targ # SBP-2 Target mode (Requires scbus and targ) device fwe # Ethernet over FireWire (non-standard!) -device fwip # IP over FireWire (rfc2734 and rfc3146) +device fwip # IP over FireWire (RFC2734 and RFC3146) ##################################################################### # dcons support (Dumb Console Device) @@ -2436,12 +2436,12 @@ ##################################################################### # crypto subsystem # -# This is a port of the openbsd crypto framework. Include this when +# This is a port of the OpenBSD crypto framework. Include this when # configuring FAST_IPSEC and when you have a h/w crypto device to accelerate -# user applications that link to openssl. +# user applications that link to OpenSSL. # -# Drivers are ports from openbsd with some simple enhancements that have -# been fed back to openbsd. +# Drivers are ports from OpenBSD with some simple enhancements that have +# been fed back to OpenBSD. device crypto # core crypto support device cryptodev # /dev/crypto for access to h/w @@ -2467,7 +2467,7 @@ # Debug options options BUS_DEBUG # enable newbus debugging -options DEBUG_VFS_LOCKS # enable vfs lock debugging +options DEBUG_VFS_LOCKS # enable VFS lock debugging options SOCKBUF_DEBUG # enable sockbuf last record/mb tail checking # ==== //depot/projects/soc2005/libalias/sys/dev/bge/if_bge.c#5 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.138 2006/08/18 13:53:53 glebius Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.140 2006/08/24 14:41:16 oleg Exp $"); /* * Broadcom BCM570x family gigabit ethernet driver for FreeBSD. @@ -341,6 +341,7 @@ static void bge_stop(struct bge_softc *); static void bge_watchdog(struct ifnet *); static void bge_shutdown(device_t); +static int bge_ifmedia_upd_locked(struct ifnet *); static int bge_ifmedia_upd(struct ifnet *); static void bge_ifmedia_sts(struct ifnet *, struct ifmediareq *); @@ -683,7 +684,7 @@ m_new->m_data = m_new->m_ext.ext_buf; } - if (!sc->bge_rx_alignment_bug) + if ((sc->bge_flags & BGE_FLAG_RX_ALIGNBUG) == 0) m_adj(m_new, ETHER_ALIGN); sc->bge_cdata.bge_rx_std_chain[i] = m_new; r = &sc->bge_ldata.bge_rx_std_ring[i]; @@ -742,7 +743,7 @@ m_new->m_data = m_new->m_ext.ext_buf; } - if (!sc->bge_rx_alignment_bug) + if ((sc->bge_flags & BGE_FLAG_RX_ALIGNBUG) == 0) m_adj(m_new, ETHER_ALIGN); error = bus_dmamap_load_mbuf_sg(sc->bge_cdata.bge_mtag_jumbo, @@ -1005,12 +1006,12 @@ BGE_MEMWIN_WRITE(sc, i, 0); /* Set up the PCI DMA control register. */ - if (sc->bge_pcie) { + if (sc->bge_flags & BGE_FLAG_PCIE) { /* PCI Express bus */ dma_rw_ctl = BGE_PCI_READ_CMD|BGE_PCI_WRITE_CMD | (0xf << BGE_PCIDMARWCTL_RD_WAT_SHIFT) | (0x2 << BGE_PCIDMARWCTL_WR_WAT_SHIFT); - } else if (sc->bge_pcix) { + } else if (sc->bge_flags & BGE_FLAG_PCIX) { /* PCI-X bus */ if (BGE_IS_5714_FAMILY(sc)) { dma_rw_ctl = BGE_PCI_READ_CMD|BGE_PCI_WRITE_CMD; @@ -1111,7 +1112,7 @@ if (!(BGE_IS_5705_OR_BEYOND(sc))) { /* Configure mbuf memory pool */ - if (sc->bge_extram) { + if (sc->bge_flags & BGE_FLAG_EXTRAM) { CSR_WRITE_4(sc, BGE_BMAN_MBUFPOOL_BASEADDR, BGE_EXT_SSRAM); if (sc->bge_asicrev == BGE_ASICREV_BCM5704) @@ -1195,7 +1196,7 @@ else rcb->bge_maxlen_flags = BGE_RCB_MAXLEN_FLAGS(BGE_MAX_FRAMELEN, 0); - if (sc->bge_extram) + if (sc->bge_flags & BGE_FLAG_EXTRAM) rcb->bge_nicaddr = BGE_EXT_STD_RX_RINGS; else rcb->bge_nicaddr = BGE_STD_RX_RINGS; @@ -1224,7 +1225,7 @@ BUS_DMASYNC_PREREAD); rcb->bge_maxlen_flags = BGE_RCB_MAXLEN_FLAGS(0, BGE_RCB_FLAG_USE_EXT_RX_BD|BGE_RCB_FLAG_RING_DISABLED); - if (sc->bge_extram) + if (sc->bge_flags & BGE_FLAG_EXTRAM) rcb->bge_nicaddr = BGE_EXT_JUMBO_RX_RINGS; else rcb->bge_nicaddr = BGE_JUMBO_RX_RINGS; @@ -1402,7 +1403,8 @@ BGE_MACMODE_RXDMA_ENB|BGE_MACMODE_RX_STATS_CLEAR| BGE_MACMODE_TX_STATS_CLEAR|BGE_MACMODE_RX_STATS_ENB| BGE_MACMODE_TX_STATS_ENB|BGE_MACMODE_FRMHDR_DMA_ENB| - (sc->bge_tbi ? BGE_PORTMODE_TBI : BGE_PORTMODE_MII)); + ((sc->bge_flags & BGE_FLAG_TBI) ? + BGE_PORTMODE_TBI : BGE_PORTMODE_MII)); /* Set misc. local control, enable interrupts on attentions */ CSR_WRITE_4(sc, BGE_MISC_LOCAL_CTL, BGE_MLC_INTR_ONATTN); @@ -1466,7 +1468,7 @@ CSR_WRITE_4(sc, BGE_MI_STS, 0); /* Enable PHY auto polling (for MII/GMII only) */ - if (sc->bge_tbi) { + if (sc->bge_flags & BGE_FLAG_TBI) { CSR_WRITE_4(sc, BGE_MI_STS, BGE_MISTS_LINK); } else { BGE_SETBIT(sc, BGE_MI_MODE, BGE_MIMODE_AUTOPOLL|10<<16); @@ -1565,7 +1567,7 @@ v->v_name, br->br_name, id); device_set_desc_copy(dev, buf); if (pci_get_subvendor(dev) == DELL_VENDORID) - sc->bge_no_3_led = 1; + sc->bge_flags |= BGE_FLAG_NO3LED; return (0); } t++; @@ -2045,7 +2047,7 @@ if (((v >> 8) & 0xff) == BGE_PCIE_CAPID_REG) { v = pci_read_config(dev, BGE_PCIE_CAPID_REG, 4); if ((v & 0xff) == BGE_PCIE_CAPID) - sc->bge_pcie = 1; + sc->bge_flags |= BGE_FLAG_PCIE; } } @@ -2054,7 +2056,7 @@ */ if ((pci_read_config(sc->bge_dev, BGE_PCI_PCISTATE, 4) & BGE_PCISTATE_PCI_BUSMODE) == 0) - sc->bge_pcix = 1; + sc->bge_flags |= BGE_FLAG_PCIX; /* Try to reset the chip. */ bge_reset(sc); @@ -2167,13 +2169,13 @@ } if ((hwcfg & BGE_HWCFG_MEDIA) == BGE_MEDIA_FIBER) - sc->bge_tbi = 1; + sc->bge_flags |= BGE_FLAG_TBI; /* The SysKonnect SK-9D41 is a 1000baseSX card. */ if ((pci_read_config(dev, BGE_PCI_SUBSYS, 4) >> 16) == SK_SUBSYSID_9D41) - sc->bge_tbi = 1; + sc->bge_flags |= BGE_FLAG_TBI; - if (sc->bge_tbi) { + if (sc->bge_flags & BGE_FLAG_TBI) { ifmedia_init(&sc->bge_ifmedia, IFM_IMASK, bge_ifmedia_upd, bge_ifmedia_sts); ifmedia_add(&sc->bge_ifmedia, IFM_ETHER|IFM_1000_SX, 0, NULL); @@ -2203,8 +2205,9 @@ * which do not support unaligned accesses, we will realign the * payloads by copying the received packets. */ - if (sc->bge_asicrev == BGE_ASICREV_BCM5701 && sc->bge_pcix) - sc->bge_rx_alignment_bug = 1; + if (sc->bge_asicrev == BGE_ASICREV_BCM5701 && + sc->bge_flags & BGE_FLAG_PCIX) + sc->bge_flags |= BGE_FLAG_RX_ALIGNBUG; /* * Call MI attach routine. @@ -2248,7 +2251,7 @@ ether_ifdetach(ifp); - if (sc->bge_tbi) { + if (sc->bge_flags & BGE_FLAG_TBI) { ifmedia_removeall(&sc->bge_ifmedia); } else { bus_generic_detach(dev); @@ -2313,7 +2316,7 @@ reset = BGE_MISCCFG_RESET_CORE_CLOCKS|(65<<1); /* XXX: Broadcom Linux driver. */ - if (sc->bge_pcie) { + if (sc->bge_flags & BGE_FLAG_PCIE) { if (CSR_READ_4(sc, 0x7e2c) == 0x60) /* PCIE 1.0 */ CSR_WRITE_4(sc, 0x7e2c, 0x20); if (sc->bge_chipid != BGE_CHIPID_BCM5750_A0) { @@ -2329,7 +2332,7 @@ DELAY(1000); /* XXX: Broadcom Linux driver. */ - if (sc->bge_pcie) { + if (sc->bge_flags & BGE_FLAG_PCIE) { if (sc->bge_chipid == BGE_CHIPID_BCM5750_A0) { uint32_t v; @@ -2406,15 +2409,18 @@ * adjustment to insure the SERDES drive level is set * to 1.2V. */ - if (sc->bge_asicrev == BGE_ASICREV_BCM5704 && sc->bge_tbi) { + if (sc->bge_asicrev == BGE_ASICREV_BCM5704 && + sc->bge_flags & BGE_FLAG_TBI) { uint32_t serdescfg; + serdescfg = CSR_READ_4(sc, BGE_SERDES_CFG); serdescfg = (serdescfg & ~0xFFF) | 0x880; CSR_WRITE_4(sc, BGE_SERDES_CFG, serdescfg); } /* XXX: Broadcom Linux driver. */ - if (sc->bge_pcie && sc->bge_chipid != BGE_CHIPID_BCM5750_A0) { + if (sc->bge_flags & BGE_FLAG_PCIE && + sc->bge_chipid != BGE_CHIPID_BCM5750_A0) { uint32_t v; v = CSR_READ_4(sc, 0x7c00); @@ -2532,7 +2538,7 @@ * For architectures with strict alignment we must make sure * the payload is aligned. */ - if (sc->bge_rx_alignment_bug) { + if (sc->bge_flags & BGE_FLAG_RX_ALIGNBUG) { bcopy(m->m_data, m->m_data + ETHER_ALIGN, cur_rx->bge_len); m->m_data += ETHER_ALIGN; @@ -2663,7 +2669,7 @@ if (cmd == POLL_AND_CHECK_STATUS) if ((sc->bge_asicrev == BGE_ASICREV_BCM5700 && sc->bge_chipid != BGE_CHIPID_BCM5700_B2) || - sc->bge_link_evt || sc->bge_tbi) + sc->bge_link_evt || (sc->bge_flags & BGE_FLAG_TBI)) bge_link_upd(sc); sc->rxcycles = count; @@ -2745,7 +2751,7 @@ else bge_stats_update(sc); - if (!sc->bge_tbi) { + if ((sc->bge_flags & BGE_FLAG_TBI) == 0) { mii = device_get_softc(sc->bge_miibus); mii_tick(mii); } else { @@ -3201,7 +3207,7 @@ CSR_WRITE_4(sc, BGE_MBX_IRQ0_LO, 0); } - bge_ifmedia_upd(ifp); + bge_ifmedia_upd_locked(ifp); ifp->if_drv_flags |= IFF_DRV_RUNNING; ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; @@ -3225,15 +3231,29 @@ static int bge_ifmedia_upd(struct ifnet *ifp) { - struct bge_softc *sc; + struct bge_softc *sc = ifp->if_softc; + int res; + + BGE_LOCK(sc); + res = bge_ifmedia_upd_locked(ifp); + BGE_UNLOCK(sc); + + return (res); +} + +static int +bge_ifmedia_upd_locked(struct ifnet *ifp) +{ + struct bge_softc *sc = ifp->if_softc; struct mii_data *mii; struct ifmedia *ifm; - sc = ifp->if_softc; + BGE_LOCK_ASSERT(sc); + ifm = &sc->bge_ifmedia; /* If this is a 1000baseX NIC, enable the TBI port. */ - if (sc->bge_tbi) { + if (sc->bge_flags & BGE_FLAG_TBI) { if (IFM_TYPE(ifm->ifm_media) != IFM_ETHER) return (EINVAL); switch(IFM_SUBTYPE(ifm->ifm_media)) { @@ -3291,12 +3311,12 @@ static void bge_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) { - struct bge_softc *sc; + struct bge_softc *sc = ifp->if_softc; struct mii_data *mii; - sc = ifp->if_softc; + BGE_LOCK(sc); - if (sc->bge_tbi) { + if (sc->bge_flags & BGE_FLAG_TBI) { ifmr->ifm_status = IFM_AVALID; ifmr->ifm_active = IFM_ETHER; if (CSR_READ_4(sc, BGE_MAC_STS) & @@ -3304,6 +3324,7 @@ ifmr->ifm_status |= IFM_ACTIVE; else { ifmr->ifm_active |= IFM_NONE; + BGE_UNLOCK(sc); return; } ifmr->ifm_active |= IFM_1000_SX; @@ -3311,6 +3332,7 @@ ifmr->ifm_active |= IFM_HDX; else ifmr->ifm_active |= IFM_FDX; + BGE_UNLOCK(sc); return; } @@ -3318,6 +3340,8 @@ mii_pollstat(mii); ifmr->ifm_active = mii->mii_media_active; ifmr->ifm_status = mii->mii_media_status; + + BGE_UNLOCK(sc); } static int @@ -3388,7 +3412,7 @@ break; case SIOCSIFMEDIA: case SIOCGIFMEDIA: - if (sc->bge_tbi) { + if (sc->bge_flags & BGE_FLAG_TBI) { error = ifmedia_ioctl(ifp, ifr, &sc->bge_ifmedia, command); } else { @@ -3476,7 +3500,7 @@ ifp = sc->bge_ifp; - if (!sc->bge_tbi) + if ((sc->bge_flags & BGE_FLAG_TBI) == 0) mii = device_get_softc(sc->bge_miibus); callout_stop(&sc->bge_stat_ch); @@ -3544,7 +3568,7 @@ * unchanged so that things will be put back to normal when * we bring the interface back up. */ - if (!sc->bge_tbi) { + if ((sc->bge_flags & BGE_FLAG_TBI) == 0) { itmp = ifp->if_flags; ifp->if_flags |= IFF_UP; /* @@ -3682,7 +3706,7 @@ return; } - if (sc->bge_tbi) { + if (sc->bge_flags & BGE_FLAG_TBI) { status = CSR_READ_4(sc, BGE_MAC_STS); if (status & BGE_MACSTAT_TBI_PCS_SYNCHED) { if (!sc->bge_link) { ==== //depot/projects/soc2005/libalias/sys/dev/bge/if_bgereg.h#4 (text+ko) ==== @@ -30,7 +30,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Aug 24 16:26:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C8AB16A4E1; Thu, 24 Aug 2006 16:26:13 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5852316A4DE for ; Thu, 24 Aug 2006 16:26:13 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BDF2B43D49 for ; Thu, 24 Aug 2006 16:26:12 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OGQCsM004314 for ; Thu, 24 Aug 2006 16:26:12 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OGQCxN004311 for perforce@freebsd.org; Thu, 24 Aug 2006 16:26:12 GMT (envelope-from gonzo@FreeBSD.org) Date: Thu, 24 Aug 2006 16:26:12 GMT Message-Id: <200608241626.k7OGQCxN004311@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104951 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 16:26:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=104951 Change 104951 by gonzo@gonzo_hq on 2006/08/24 16:26:09 o Unbreak kernel build: move helper routines to the top of the file so they'll be defined before used. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#16 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#16 (text+ko) ==== @@ -28,13 +28,55 @@ #ifndef _MACHINE_CPUFUNC_H_ #define _MACHINE_CPUFUNC_H_ -#ifdef _KERNEL - #include #include +/* + * These functions are required by user-land atomi ops + */ static __inline void +mips_barrier(void) +{ + __asm __volatile (".set noreorder\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + ".set reorder\n\t" + : : : "memory"); +} + +static __inline void +mips_wbflush(void) +{ + __asm __volatile ("sync" : : : "memory"); + mips_barrier(); +#if 0 + __asm __volatile("mtc0 %0, $12\n" /* MIPS_COP_0_STATUS */ + : : "r" (flag)); +#endif +} + +static __inline void +mips_read_membar(void) +{ + /* Nil */ +} + +static __inline void +mips_write_membar(void) +{ + mips_wbflush(); +} + +#ifdef _KERNEL + +static __inline void mips_tlbp(void) { __asm __volatile ("tlbp"); @@ -194,47 +236,4 @@ #endif /* _KERNEL */ -/* - * These functions are required by user-land atomi ops - */ - -static __inline void -mips_barrier(void) -{ - __asm __volatile (".set noreorder\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - "nop\n\t" - ".set reorder\n\t" - : : : "memory"); -} - -static __inline void -mips_wbflush(void) -{ - __asm __volatile ("sync" : : : "memory"); - mips_barrier(); -#if 0 - __asm __volatile("mtc0 %0, $12\n" /* MIPS_COP_0_STATUS */ - : : "r" (flag)); -#endif -} - -static __inline void -mips_read_membar(void) -{ - /* Nil */ -} - -static __inline void -mips_write_membar(void) -{ - mips_wbflush(); -} - #endif /* !_MACHINE_CPUFUNC_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Aug 24 16:36:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4BBE516A4DE; Thu, 24 Aug 2006 16:36:33 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0EE2B16A4DA for ; Thu, 24 Aug 2006 16:36:33 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9641243D6A for ; Thu, 24 Aug 2006 16:36:25 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OGaPvJ004890 for ; Thu, 24 Aug 2006 16:36:25 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OGaPIu004887 for perforce@freebsd.org; Thu, 24 Aug 2006 16:36:25 GMT (envelope-from piso@freebsd.org) Date: Thu, 24 Aug 2006 16:36:25 GMT Message-Id: <200608241636.k7OGaPIu004887@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104952 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 16:36:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=104952 Change 104952 by piso@piso_newluxor on 2006/08/24 16:36:14 These don't belong here. Affected files ... .. //depot/projects/soc2005/libalias/doc/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/README#2 delete .. //depot/projects/soc2005/libalias/doc/bn_BD.ISO10646-1/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/bn_BD.ISO10646-1/articles/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/bn_BD.ISO10646-1/articles/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/doc/bn_BD.ISO10646-1/articles/explaining-bsd/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/bn_BD.ISO10646-1/articles/explaining-bsd/article.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/bn_BD.ISO10646-1/articles/new-users/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/bn_BD.ISO10646-1/articles/new-users/article.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/euro/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/euro/article.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/ipsec-must/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/ipsec-must/article.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/pxe/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/pxe/article.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/pxe/dhcpd.conf#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/pxe/install.cfg#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/pxe/loader.rc#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/pxe/pkgmaker.sh#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/pxe/post#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/articles/pxe/pre#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/authors.ent#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/bookinfo.ent#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/catalog#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/disclaimer.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/freebsd.dsl#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/l10n.ent#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/legalnotice.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/license.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/mailing-lists.ent#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/newsgroups.ent#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/teams.ent#2 delete .. //depot/projects/soc2005/libalias/doc/da_DK.ISO8859-1/share/sgml/translators.ent#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/contributing/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/contributing/article.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/explaining-bsd/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/explaining-bsd/article.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/laptop/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/laptop/article.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/new-users/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/new-users/article.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/version-guide/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/articles/version-guide/article.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/Makefile.inc#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/faq/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/faq/book.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/book.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/chapter.decl#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/chapters.ent#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/doc-build/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/examples/appendix.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/overview/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/psgml-mode/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/see-also/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/sgml-markup/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/sgml-primer/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/structure/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/stylesheets/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/the-website/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/tools/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/translations/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/fdp-primer/writing-style/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/Makefile#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/appendix.decl#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/audit/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/basics/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/bibliography/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/book.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/boot/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/chapter.decl#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/chapters.ent#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/colophon.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/config/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/cutting-edge/chapter.sgml#2 delete .. //depot/projects/soc2005/libalias/doc/de_DE.ISO8859-1/books/handbook/desktop/chapter.sgml#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Thu Aug 24 16:37:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8822916A4E2; Thu, 24 Aug 2006 16:37:27 +0000 (UTC) X-Original-To: perforce@FreeBSD.ORG Delivered-To: perforce@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 666E616A4DE; Thu, 24 Aug 2006 16:37:27 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (vc4-2-0-87.dsl.netrack.net [199.45.160.85]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8F0D943D6D; Thu, 24 Aug 2006 16:37:24 +0000 (GMT) (envelope-from imp@bsdimp.com) Received: from localhost (localhost.village.org [127.0.0.1] (may be forged)) by harmony.bsdimp.com (8.13.4/8.13.4) with ESMTP id k7OGYSoH084195; Thu, 24 Aug 2006 10:34:28 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Thu, 24 Aug 2006 10:34:37 -0600 (MDT) Message-Id: <20060824.103437.-300781161.imp@bsdimp.com> To: gonzo@FreeBSD.ORG From: "M. Warner Losh" In-Reply-To: <200608232202.k7NM2qZO023634@repoman.freebsd.org> References: <200608232202.k7NM2qZO023634@repoman.freebsd.org> X-Mailer: Mew version 4.2 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0 (harmony.bsdimp.com [127.0.0.1]); Thu, 24 Aug 2006 10:34:29 -0600 (MDT) Cc: perforce@FreeBSD.ORG Subject: Re: PERFORCE change 104867 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 16:37:27 -0000 In message: <200608232202.k7NM2qZO023634@repoman.freebsd.org> Oleksandr Tymoshenko writes: : http://perforce.freebsd.org/chv.cgi?CH=104867 : : Change 104867 by gonzo@gonzo_hideout on 2006/08/23 22:02:08 : : o More NetBSDisms fixed. : : Affected files ... : : .. //depot/projects/mips2/src/lib/libc/mips/SYS.h#2 edit : : Differences ... : : ==== //depot/projects/mips2/src/lib/libc/mips/SYS.h#2 (text+ko) ==== : : @@ -67,7 +67,8 @@ : */ : : #include : -#include : + : +#include "machine/asm.h" : +#include "machine/asm.h" shouldn't that be ? From owner-p4-projects@FreeBSD.ORG Thu Aug 24 16:50:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 170BE16A4DF; Thu, 24 Aug 2006 16:50:49 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CDFB416A4DA for ; Thu, 24 Aug 2006 16:50:48 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7249E43D46 for ; Thu, 24 Aug 2006 16:50:48 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OGomVs013572 for ; Thu, 24 Aug 2006 16:50:48 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OGomcM013569 for perforce@freebsd.org; Thu, 24 Aug 2006 16:50:48 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Aug 2006 16:50:48 GMT Message-Id: <200608241650.k7OGomcM013569@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104957 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 16:50:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=104957 Change 104957 by rwatson@rwatson_zoo on 2006/08/24 16:49:57 Update for s/BSM_/AUDIT_/. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#20 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#20 (text+ko) ==== @@ -118,7 +118,7 @@ token_t *cur, *hdr, *trail; struct timeval tm; - tot_rec_size = rec->len + BSM_HEADER_SIZE + BSM_TRAILER_SIZE; + tot_rec_size = rec->len + AUDIT_HEADER_SIZE + AUDIT_TRAILER_SIZE; if (tot_rec_size <= MAX_AUDIT_RECORD_SIZE) { /* Create the header token */ tm.tv_usec = ctime->tv_nsec / 1000; From owner-p4-projects@FreeBSD.ORG Thu Aug 24 16:51:53 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 30FB516A4E7; Thu, 24 Aug 2006 16:51:53 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E5E6216A4E1 for ; Thu, 24 Aug 2006 16:51:52 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EBF2B43D4C for ; Thu, 24 Aug 2006 16:51:51 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OGppFK013697 for ; Thu, 24 Aug 2006 16:51:51 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OGpo24013694 for perforce@freebsd.org; Thu, 24 Aug 2006 16:51:50 GMT (envelope-from imp@freebsd.org) Date: Thu, 24 Aug 2006 16:51:50 GMT Message-Id: <200608241651.k7OGpo24013694@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104958 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 16:51:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=104958 Change 104958 by imp@imp_paco-paco on 2006/08/24 16:51:02 IFC @104955 Affected files ... .. //depot/projects/arm/src/Makefile.inc1#5 integrate .. //depot/projects/arm/src/ObsoleteFiles.inc#5 integrate .. //depot/projects/arm/src/contrib/gdb/FREEBSD-Xlist#2 integrate .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/fbsd.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/fbsd.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/powerpc/nm-fbsd.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/rs6000/nm-rs6000.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/rs6000/nm-rs6000ly.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/rs6000/rs6000.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/rs6000/rs6000.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/rs6000/rs6000lynx.mh#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/rs6000/rs6000lynx.mt#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/rs6000/tm-rs6000.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/rs6000/tm-rs6000ly.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/config/rs6000/xm-rs6000.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ppcfbsd-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ppcfbsd-tdep.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/ppcfbsd-tdep.h#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/rs6000-nat.c#1 branch .. //depot/projects/arm/src/contrib/gdb/gdb/rs6000-tdep.c#1 branch .. //depot/projects/arm/src/contrib/pnpinfo/pnpinfo.c#2 integrate .. //depot/projects/arm/src/etc/rc.d/Makefile#3 integrate .. //depot/projects/arm/src/etc/rc.d/ramdisk#2 delete .. //depot/projects/arm/src/etc/rc.d/ramdisk-own#2 delete .. //depot/projects/arm/src/etc/rc.d/sshd#2 integrate .. //depot/projects/arm/src/etc/rc.d/ypxfrd#2 integrate .. //depot/projects/arm/src/etc/rc.initdiskless#2 integrate .. //depot/projects/arm/src/etc/rc.subr#4 integrate .. //depot/projects/arm/src/gnu/usr.bin/Makefile#3 integrate .. //depot/projects/arm/src/gnu/usr.bin/binutils/libbfd/Makefile.powerpc#2 integrate .. //depot/projects/arm/src/gnu/usr.bin/gdb/Makefile#2 integrate .. //depot/projects/arm/src/gnu/usr.bin/gdb/arch/alpha/Makefile#2 delete .. //depot/projects/arm/src/gnu/usr.bin/gdb/arch/alpha/config.h#2 delete .. //depot/projects/arm/src/gnu/usr.bin/gdb/arch/alpha/init.c#2 delete .. //depot/projects/arm/src/gnu/usr.bin/gdb/arch/powerpc/Makefile#1 branch .. //depot/projects/arm/src/gnu/usr.bin/gdb/arch/powerpc/config.h#1 branch .. //depot/projects/arm/src/gnu/usr.bin/gdb/arch/powerpc/init.c#1 branch .. //depot/projects/arm/src/gnu/usr.bin/gdb/kgdb/trgt_alpha.c#2 delete .. //depot/projects/arm/src/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#2 integrate .. //depot/projects/arm/src/lib/Makefile#3 integrate .. //depot/projects/arm/src/lib/csu/alpha/Makefile#2 delete .. //depot/projects/arm/src/lib/csu/alpha/crt1.c#2 delete .. //depot/projects/arm/src/lib/csu/alpha/crti.S#2 delete .. //depot/projects/arm/src/lib/csu/alpha/crtn.S#2 delete .. //depot/projects/arm/src/lib/libc/Makefile#2 integrate .. //depot/projects/arm/src/lib/libc/alpha/Makefile.inc#2 delete .. //depot/projects/arm/src/lib/libc/alpha/SYS.h#2 delete .. //depot/projects/arm/src/lib/libc/alpha/Symbol.map#2 delete .. //depot/projects/arm/src/lib/libc/alpha/_fpmath.h#2 delete .. //depot/projects/arm/src/lib/libc/alpha/arith.h#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/Makefile.inc#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/_ctx_start.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/_set_tp.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/_setjmp.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/divrem.m4#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/fabs.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/flt_rounds.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/fpgetmask.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/fpgetround.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/fpgetsticky.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/fpsetmask.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/fpsetround.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/infinity.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/makecontext.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/modf.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/rfork_thread.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/setjmp.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/signalcontext.c#2 delete .. //depot/projects/arm/src/lib/libc/alpha/gen/sigsetjmp.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/net/Makefile.inc#2 delete .. //depot/projects/arm/src/lib/libc/alpha/net/byte_swap_2.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/net/byte_swap_4.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/net/htonl.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/net/htons.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/net/ntohl.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/net/ntohs.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/stdlib/Makefile.inc#2 delete .. //depot/projects/arm/src/lib/libc/alpha/string/Makefile.inc#2 delete .. //depot/projects/arm/src/lib/libc/alpha/string/bcopy.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/string/bzero.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/string/ffs.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/string/memcpy.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/string/memmove.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/Makefile.inc#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/Ovfork.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/brk.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/cerror.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/exect.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/fork.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/pipe.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/ptrace.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/sbrk.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/setlogin.S#2 delete .. //depot/projects/arm/src/lib/libc/alpha/sys/sigreturn.S#2 delete .. //depot/projects/arm/src/lib/libc/stdio/findfp.c#2 integrate .. //depot/projects/arm/src/lib/libc_r/Makefile#2 integrate .. //depot/projects/arm/src/lib/libc_r/arch/alpha/_atomic_lock.S#2 delete .. //depot/projects/arm/src/lib/libdisk/write_alpha_disk.c#2 delete .. //depot/projects/arm/src/lib/libio/Makefile#2 delete .. //depot/projects/arm/src/lib/libio/alpha_sethae.c#2 delete .. //depot/projects/arm/src/lib/libio/bwx.c#2 delete .. //depot/projects/arm/src/lib/libio/io.c#2 delete .. //depot/projects/arm/src/lib/libio/io.h#2 delete .. //depot/projects/arm/src/lib/libio/swiz.c#2 delete .. //depot/projects/arm/src/lib/libkvm/kvm_alpha.c#2 delete .. //depot/projects/arm/src/lib/libpthread/Makefile#2 integrate .. //depot/projects/arm/src/lib/libpthread/arch/alpha/Makefile.inc#2 delete .. //depot/projects/arm/src/lib/libpthread/arch/alpha/alpha/context.S#2 delete .. //depot/projects/arm/src/lib/libpthread/arch/alpha/alpha/enter_uts.S#2 delete .. //depot/projects/arm/src/lib/libpthread/arch/alpha/alpha/pthread_md.c#2 delete .. //depot/projects/arm/src/lib/libpthread/arch/alpha/include/atomic_ops.h#2 delete .. //depot/projects/arm/src/lib/libpthread/arch/alpha/include/pthread_md.h#2 delete .. //depot/projects/arm/src/lib/libstand/Makefile#2 integrate .. //depot/projects/arm/src/lib/libstand/alpha/_setjmp.S#2 delete .. //depot/projects/arm/src/lib/libthr/Makefile#2 integrate .. //depot/projects/arm/src/lib/libthr/arch/alpha/Makefile.inc#2 delete .. //depot/projects/arm/src/lib/libthr/arch/alpha/alpha/pthread_md.c#2 delete .. //depot/projects/arm/src/lib/libthr/arch/alpha/include/pthread_md.h#2 delete .. //depot/projects/arm/src/lib/libthread_db/arch/alpha/libc_r_md.c#2 delete .. //depot/projects/arm/src/lib/libthread_db/arch/alpha/libpthread_md.c#2 delete .. //depot/projects/arm/src/lib/libutil/login.conf.5#2 integrate .. //depot/projects/arm/src/lib/msun/alpha/Makefile.inc#2 delete .. //depot/projects/arm/src/lib/msun/alpha/Symbol.map#2 delete .. //depot/projects/arm/src/lib/msun/alpha/fenv.c#2 delete .. //depot/projects/arm/src/lib/msun/alpha/fenv.h#2 delete .. //depot/projects/arm/src/lib/msun/alpha/s_copysign.S#2 delete .. //depot/projects/arm/src/lib/msun/alpha/s_copysignf.S#2 delete .. //depot/projects/arm/src/libexec/rtld-elf/alpha/Makefile.inc#2 delete .. //depot/projects/arm/src/libexec/rtld-elf/alpha/ld.so.script#2 delete .. //depot/projects/arm/src/libexec/rtld-elf/alpha/reloc.c#2 delete .. //depot/projects/arm/src/libexec/rtld-elf/alpha/rtld_machdep.h#2 delete .. //depot/projects/arm/src/libexec/rtld-elf/alpha/rtld_start.S#2 delete .. //depot/projects/arm/src/release/Makefile#2 integrate .. //depot/projects/arm/src/release/alpha/boot_crunch.conf#2 delete .. //depot/projects/arm/src/release/alpha/mkisoimages.sh#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#7 integrate .. //depot/projects/arm/src/rescue/rescue/Makefile#2 integrate .. //depot/projects/arm/src/sbin/bsdlabel/Makefile#2 integrate .. //depot/projects/arm/src/sbin/fsdb/fsdb.8#2 integrate .. //depot/projects/arm/src/sbin/fsdb/fsdb.c#2 integrate .. //depot/projects/arm/src/sbin/fsdb/fsdbutil.c#2 integrate .. //depot/projects/arm/src/sbin/ggate/Makefile#2 integrate .. //depot/projects/arm/src/sbin/ifconfig/ifmedia.c#2 integrate .. //depot/projects/arm/src/sbin/ipfw/ipfw2.c#4 integrate .. //depot/projects/arm/src/sbin/ping/Makefile#2 integrate .. //depot/projects/arm/src/secure/lib/libcrypto/Makefile.inc#3 integrate .. //depot/projects/arm/src/secure/lib/libcrypto/opensslconf-alpha.h#2 delete .. //depot/projects/arm/src/share/examples/drivers/make_pseudo_driver.sh#3 integrate .. //depot/projects/arm/src/share/man/man8/rc.subr.8#2 integrate .. //depot/projects/arm/src/share/mk/bsd.cpu.mk#4 integrate .. //depot/projects/arm/src/share/mk/bsd.endian.mk#2 integrate .. //depot/projects/arm/src/sys/conf/NOTES#31 integrate .. //depot/projects/arm/src/sys/dev/bge/if_bge.c#20 integrate .. //depot/projects/arm/src/sys/dev/bge/if_bgereg.h#14 integrate .. //depot/projects/arm/src/sys/dev/em/if_em.c#25 integrate .. //depot/projects/arm/src/sys/dev/mii/brgphy.c#9 integrate .. //depot/projects/arm/src/sys/kern/kern_thr.c#8 integrate .. //depot/projects/arm/src/sys/net/if_spppsubr.c#5 integrate .. //depot/projects/arm/src/sys/netsmb/smb_crypt.c#3 integrate .. //depot/projects/arm/src/sys/netsmb/smb_iod.c#2 integrate .. //depot/projects/arm/src/sys/netsmb/smb_rq.c#2 integrate .. //depot/projects/arm/src/sys/netsmb/smb_rq.h#2 integrate .. //depot/projects/arm/src/sys/pci/agp_amd64.c#6 integrate .. //depot/projects/arm/src/tools/regression/lib/msun/Makefile#2 integrate .. //depot/projects/arm/src/usr.bin/Makefile#2 integrate .. //depot/projects/arm/src/usr.bin/gprof/alpha.h#2 delete .. //depot/projects/arm/src/usr.bin/gprof/gprof.h#2 integrate .. //depot/projects/arm/src/usr.bin/truss/alpha-fbsd.c#2 delete .. //depot/projects/arm/src/usr.bin/uac/Makefile#2 delete .. //depot/projects/arm/src/usr.bin/uac/uac.1#2 delete .. //depot/projects/arm/src/usr.bin/uac/uac.c#2 delete .. //depot/projects/arm/src/usr.bin/xlint/arch/alpha/targparam.h#2 delete .. //depot/projects/arm/src/usr.sbin/Makefile#5 integrate .. //depot/projects/arm/src/usr.sbin/crunch/crunchide/Makefile#2 integrate .. //depot/projects/arm/src/usr.sbin/pnpinfo/Makefile#2 integrate .. //depot/projects/arm/src/usr.sbin/rpc.lockd/lockd.c#2 integrate .. //depot/projects/arm/src/usr.sbin/traceroute/Makefile#2 integrate Differences ... ==== //depot/projects/arm/src/Makefile.inc1#5 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.552 2006/08/09 11:03:06 netchild Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.553 2006/08/22 07:51:05 ru Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -926,9 +926,6 @@ .if ${MK_RESCUE} != "no" || defined(RELEASEDIR) _crunchide= usr.sbin/crunch/crunchide .endif -.if ${TARGET_ARCH} == "alpha" -_elf2exe= usr.sbin/elf2exe -.endif .if ${TARGET_ARCH} == "i386" && defined(RELEASEDIR) _kgzip= usr.sbin/kgzip .endif @@ -941,7 +938,6 @@ usr.bin/xlint/lint1 usr.bin/xlint/lint2 usr.bin/xlint/xlint \ ${_btxld} \ ${_crunchide} \ - ${_elf2exe} \ ${_kgzip} ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_tool}; \ ==== //depot/projects/arm/src/ObsoleteFiles.inc#5 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/ObsoleteFiles.inc,v 1.47 2006/08/14 18:20:36 netchild Exp $ +# $FreeBSD: src/ObsoleteFiles.inc,v 1.49 2006/08/22 11:12:09 flz Exp $ # # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and # directories (OLD_DIRS) which should get removed at an update. Recently @@ -14,6 +14,9 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20060822: ramdisk{,-own} have been replaced by mdconfig{,2} +OLD_FILES+=etc/rc.d/ramdisk +OLD_FILES+=etc/rc.d/ramdisk-own # 20060704: KAME compat file net_osdep.h removed OLD_FILES+=usr/include/net/net_osdep.h # 20060517: pcvt removed @@ -334,7 +337,7 @@ OLD_FILES+=usr/share/man/man1/sgsc.1.gz OLD_FILES+=usr/share/man/man4/i386/stl.4.gz OLD_FILES+=usr/share/man/man8/raidctl.8.gz -.if ${TARGET_ARCH} != "alpha" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "sparc64" # 20040130: libkse renamed to libpthread OLD_FILES+=usr/lib/libkse.a OLD_FILES+=usr/lib/libkse.so @@ -3066,7 +3069,7 @@ OLD_LIBS+=usr/lib/libisc.so.1 # 200408XX OLD_LIBS+=usr/lib/snmp_netgraph.so.1 -.if ${TARGET_ARCH} != "alpha" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "sparc64" # 20040130: libkse renamed to libpthread OLD_LIBS+=usr/lib/libkse.so.1 .endif ==== //depot/projects/arm/src/contrib/gdb/FREEBSD-Xlist#2 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/contrib/gdb/FREEBSD-Xlist,v 1.6 2004/06/20 19:15:58 marcel Exp $ +$FreeBSD: src/contrib/gdb/FREEBSD-Xlist,v 1.7 2006/08/23 03:30:33 marcel Exp $ gdb-6.1.1/bfd/* gdb-6.1.1/config/* gdb-6.1.1/etc/* @@ -16,7 +16,6 @@ gdb-6.1.1/gdb/config/mn10300/* gdb-6.1.1/gdb/config/ns32k/* gdb-6.1.1/gdb/config/pa/* -gdb-6.1.1/gdb/config/rs6000/* gdb-6.1.1/gdb/config/sh/* gdb-6.1.1/gdb/config/v850/* gdb-6.1.1/gdb/config/vax/* @@ -34,7 +33,6 @@ gdb-6.1.1/gdb/osf-share/* gdb-6.1.1/gdb/hppa* gdb-6.1.1/gdb/rdi-share/* -gdb-6.1.1/gdb/rs6000* gdb-6.1.1/gdb/sh* gdb-6.1.1/gdb/testsuite/* gdb-6.1.1/gdb/v850* ==== //depot/projects/arm/src/contrib/pnpinfo/pnpinfo.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/contrib/pnpinfo/pnpinfo.c,v 1.9 2004/01/04 11:11:02 charnier Exp $"); +__FBSDID("$FreeBSD: src/contrib/pnpinfo/pnpinfo.c,v 1.10 2006/08/22 07:51:09 ru Exp $"); #include @@ -593,9 +593,6 @@ if (open("/dev/io", O_RDONLY) < 0) errx(1, "can't get I/O privilege"); #endif -#ifdef __alpha__ - ioperm(0x203, 0x400 - 0x203, 1); -#endif printf("Checking for Plug-n-Play devices...\n"); ==== //depot/projects/arm/src/etc/rc.d/Makefile#3 (text+ko) ==== @@ -1,5 +1,5 @@ # $NetBSD: Makefile,v 1.16 2001/01/14 15:37:22 minoura Exp $ -# $FreeBSD: src/etc/rc.d/Makefile,v 1.74 2006/08/04 18:37:03 des Exp $ +# $FreeBSD: src/etc/rc.d/Makefile,v 1.75 2006/08/22 11:12:09 flz Exp $ .include @@ -30,7 +30,7 @@ pf pflog pfsync \ powerd power_profile ppp pppoed pwcheck \ quota \ - ramdisk ramdisk-own random rarpd resolv root \ + random rarpd resolv root \ route6d routed routing rpcbind rtadvd rwho \ savecore sdpd securelevel sendmail \ serial sppp swap1 \ ==== //depot/projects/arm/src/etc/rc.d/sshd#2 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: sshd,v 1.18 2002/04/29 08:23:34 lukem Exp $ -# $FreeBSD: src/etc/rc.d/sshd,v 1.11 2006/04/11 09:08:15 flz Exp $ +# $FreeBSD: src/etc/rc.d/sshd,v 1.12 2006/08/22 11:17:28 flz Exp $ # # PROVIDE: sshd @@ -19,8 +19,6 @@ timeout=300 -load_rc_config $name - user_reseed() { ( @@ -49,46 +47,47 @@ umask 022 # Can't do anything if ssh is not installed - [ -x ${prefix}/bin/ssh-keygen ] || { - warn "${prefix}/bin/ssh-keygen does not exist." + [ -x /usr/bin/ssh-keygen ] || { + warn "/usr/bin/ssh-keygen does not exist." return 1 } - if [ -f ${etcdir}/ssh/ssh_host_key ]; then + if [ -f /etc/ssh/ssh_host_key ]; then echo "You already have an RSA host key" \ - "in ${etcdir}/ssh/ssh_host_key" + "in /etc/ssh/ssh_host_key" echo "Skipping protocol version 1 RSA Key Generation" else - ${prefix}/bin/ssh-keygen -t rsa1 -b 1024 \ - -f ${etcdir}/ssh/ssh_host_key -N '' + /usr/bin/ssh-keygen -t rsa1 -b 1024 \ + -f /etc/ssh/ssh_host_key -N '' fi - if [ -f ${etcdir}/ssh/ssh_host_dsa_key ]; then + if [ -f /etc/ssh/ssh_host_dsa_key ]; then echo "You already have a DSA host key" \ - "in ${etcdir}/ssh/ssh_host_dsa_key" + "in /etc/ssh/ssh_host_dsa_key" echo "Skipping protocol version 2 DSA Key Generation" else - ${prefix}/bin/ssh-keygen -t dsa -f ${etcdir}/ssh/ssh_host_dsa_key -N '' + /usr/bin/ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N '' fi - if [ -f ${etcdir}/ssh/ssh_host_rsa_key ]; then + if [ -f /etc/ssh/ssh_host_rsa_key ]; then echo "You already have a RSA host key" \ - "in ${etcdir}/ssh/ssh_host_rsa_key" + "in /etc/ssh/ssh_host_rsa_key" echo "Skipping protocol version 2 RSA Key Generation" else - ${prefix}/bin/ssh-keygen -t rsa -f ${etcdir}/ssh/ssh_host_rsa_key -N '' + /usr/bin/ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N '' fi ) } sshd_precmd() { - if [ ! -f ${etcdir}/ssh/ssh_host_key -o \ - ! -f ${etcdir}/ssh/ssh_host_dsa_key -o \ - ! -f ${etcdir}/ssh/ssh_host_rsa_key ]; then + if [ ! -f /etc/ssh/ssh_host_key -o \ + ! -f /etc/ssh/ssh_host_dsa_key -o \ + ! -f /etc/ssh/ssh_host_rsa_key ]; then user_reseed run_rc_command keygen fi } +load_rc_config $name run_rc_command "$1" ==== //depot/projects/arm/src/etc/rc.d/ypxfrd#2 (text+ko) ==== @@ -1,10 +1,10 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/ypxfrd,v 1.6 2004/10/07 13:55:26 mtm Exp $ +# $FreeBSD: src/etc/rc.d/ypxfrd,v 1.7 2006/08/22 14:58:23 flz Exp $ # # PROVIDE: ypxfrd -# REQUIRE: rpcbind +# REQUIRE: rpcbind ypserv . /etc/rc.subr ==== //depot/projects/arm/src/etc/rc.initdiskless#2 (text+ko) ==== @@ -24,7 +24,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/etc/rc.initdiskless,v 1.49 2006/01/11 21:59:30 brooks Exp $ +# $FreeBSD: src/etc/rc.initdiskless,v 1.50 2006/08/22 16:21:16 ru Exp $ # On entry to this script the entire system consists of a read-only root # mounted via NFS. The kernel has run BOOTP and configured an interface @@ -99,19 +99,19 @@ # # You will almost universally want to create the following files under /conf # -# File Content -# ---------------------------- ------------------------------------------ -# /conf/base/etc/md_size size of /etc filesystem -# /conf/base/diskless_remount "/etc" -# /conf/default/etc/rc.conf generic diskless config parameters -# /conf/default/etc/fstab generic diskless fstab e.g. like this +# File Content +# ---------------------------- ---------------------------------- +# /conf/base/etc/md_size size of /etc filesystem +# /conf/base/etc/diskless_remount "/etc" +# /conf/default/etc/rc.conf generic diskless config parameters +# /conf/default/etc/fstab generic diskless fstab e.g. like this # -# foo:/root_part / nfs ro 0 0 -# foo:/usr_part /usr nfs ro 0 0 -# foo:/home_part /home nfs rw 0 0 -# md /tmp mfs -s=30m,rw 0 0 -# md /var mfs -s=30m,rw 0 0 -# proc /proc procfs rw 0 0 +# foo:/root_part / nfs ro 0 0 +# foo:/usr_part /usr nfs ro 0 0 +# foo:/home_part /home nfs rw 0 0 +# md /tmp mfs -s=30m,rw 0 0 +# md /var mfs -s=30m,rw 0 0 +# proc /proc procfs rw 0 0 # # plus, possibly, overrides for password files etc. # ==== //depot/projects/arm/src/etc/rc.subr#4 (text+ko) ==== @@ -1,5 +1,5 @@ # $NetBSD: rc.subr,v 1.66 2006/04/01 10:05:50 he Exp $ -# $FreeBSD: src/etc/rc.subr,v 1.67 2006/08/18 13:07:38 yar Exp $ +# $FreeBSD: src/etc/rc.subr,v 1.68 2006/08/22 11:17:28 flz Exp $ # # Copyright (c) 1997-2004 The NetBSD Foundation, Inc. # All rights reserved. @@ -506,6 +506,9 @@ ;; esac + eval _override_command=\$${name}_program + command=${command:+${_override_command:-$command}} + _keywords="start stop restart rcvar $extra_commands" rc_pid= _pidcmd= @@ -873,8 +876,6 @@ # load_rc_config() { - local _tmp - _name=$1 if [ -z "$_name" ]; then err 3 'USAGE: load_rc_config name' @@ -893,35 +894,9 @@ fi _rc_conf_loaded=true fi - - eval _override_command=\$${name}_program - command=${command:+${_override_command:-$command}} - - if [ -z "${command}" ]; then - _tmp=`/bin/realpath $0` - prefix=${_tmp%/etc/rc.d/*}/ - else - prefix=${command%/*bin/*}/ - fi - if [ "${prefix}" = "/" -o "${prefix}" = "/usr/" ] ; then - etcdir="/etc" - else - etcdir="${prefix}etc" - fi - - # XXX - Deprecated - if [ -f /etc/rc.conf.d/${_name} -a ${etcdir} != "/etc" ]; then + if [ -f /etc/rc.conf.d/"$_name" ]; then debug "Sourcing /etc/rc.conf.d/${_name}" - warn "Warning: /etc/rc.conf.d/${_name} is deprecated, please use ${etcdir}/rc.conf.d/${_name} instead." - if [ -f ${etcdir}/rc.conf.d/${_name} ]; then - warn "Warning: Both /etc/rc.conf.d/${_name} and ${etcdir}/rc.conf.d/${_name} exist." - fi - . /etc/rc.conf.d/${_name} - fi - - if [ -f ${etcdir}/rc.conf.d/${_name} ]; then - debug "Sourcing ${etcdir}/rc.conf.d/${_name}" - . ${etcdir}/rc.conf.d/${_name} + . /etc/rc.conf.d/"$_name" fi # XXX - Deprecated variable name support ==== //depot/projects/arm/src/gnu/usr.bin/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.88 2006/03/17 18:54:22 ru Exp $ +# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.90 2006/08/24 15:46:29 marcel Exp $ .include @@ -24,14 +24,8 @@ sort \ ${_texinfo} -.if ${MACHINE_ARCH} == "powerpc" -MK_GDB= no # not yet -.endif - .if ${MK_CXX} != "no" -.if ${MACHINE_ARCH} != "powerpc" _gperf= gperf -.endif .if ${MK_GROFF} != "no" _groff= groff .endif ==== //depot/projects/arm/src/gnu/usr.bin/binutils/libbfd/Makefile.powerpc#2 (text+ko) ==== @@ -1,4 +1,6 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile.powerpc,v 1.8 2004/07/08 17:05:32 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile.powerpc,v 1.9 2006/08/24 02:36:21 marcel Exp $ + +ARCHS+= rs6000 DEFAULT_VECTOR= bfd_elf32_powerpc_vec ==== //depot/projects/arm/src/gnu/usr.bin/gdb/Makefile#2 (text+ko) ==== @@ -1,5 +1,9 @@ -# $FreeBSD: src/gnu/usr.bin/gdb/Makefile,v 1.9 2004/07/25 05:32:50 marcel Exp $ +# $FreeBSD: src/gnu/usr.bin/gdb/Makefile,v 1.10 2006/08/24 02:44:58 marcel Exp $ + +SUBDIR= doc libgdb gdb gdbtui -SUBDIR= doc libgdb gdb gdbtui kgdb +.if ${MACHINE_ARCH} != "powerpc" +SUBDIR+= kgdb +.endif .include ==== //depot/projects/arm/src/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/gnu/usr.bin/gdb/kgdb/trgt_amd64.c,v 1.6 2005/09/28 07:40:27 peter Exp $"); +__FBSDID("$FreeBSD: src/gnu/usr.bin/gdb/kgdb/trgt_amd64.c,v 1.7 2006/08/23 19:16:17 jhb Exp $"); #include #include @@ -149,15 +149,12 @@ *lvalp = not_lval; *realnump = -1; - cache = kgdb_trgt_frame_cache(next_frame, this_cache); - if (cache->pc == 0) - return; - ofs = (regnum >= AMD64_RAX_REGNUM && regnum <= AMD64_EFLAGS_REGNUM + 2) ? kgdb_trgt_frame_offset[regnum] : -1; if (ofs == -1) return; + cache = kgdb_trgt_frame_cache(next_frame, this_cache); *addrp = cache->sp + ofs; *lvalp = lval_memory; target_read_memory(*addrp, valuep, regsz); @@ -176,8 +173,6 @@ CORE_ADDR pc; pc = frame_pc_unwind(next_frame); - if (pc == 0) - return (&kgdb_trgt_trapframe_unwind); pname = NULL; find_pc_partial_function(pc, &pname, NULL, NULL); if (pname == NULL) ==== //depot/projects/arm/src/lib/Makefile#3 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/Makefile,v 1.215 2006/08/04 17:56:31 marcel Exp $ +# $FreeBSD: src/lib/Makefile,v 1.217 2006/08/22 07:51:06 ru Exp $ .include @@ -30,7 +30,7 @@ libbegemot ${_libbluetooth} libbsnmp libbz2 libc ${_libc_r} \ libcalendar libcam libcompat libdevinfo libdevstat libdisk \ libedit libexpat libfetch libform libftpio libgeom ${_libgpib} \ - libgssapi ${_libio} libipsec \ + libgssapi libipsec \ ${_libipx} libkiconv libmagic libmemstat libmenu ${_libmilter} ${_libmp} \ ${_libncp} ${_libngatm} libopie libpam libpanel libpcap \ libpmc ${_libpthread} librt ${_libsdp} ${_libsm} ${_libsmb} \ @@ -72,15 +72,15 @@ _libvgl= libvgl .endif +.if ${MACHINE_ARCH} == "ia64" +_libsmb= libsmb +.endif + .if ${MACHINE_ARCH} != "arm" && ${MACHINE_ARCH} != "ia64" && \ ${MACHINE_ARCH} != "powerpc" && ${MK_LIBC_R} != "no" _libc_r= .endif -.if ${MACHINE_ARCH} == "alpha" -_libio= libio -.endif - .if ${MK_SENDMAIL} != "no" _libmilter= libmilter _libsm= libsm ==== //depot/projects/arm/src/lib/libc/Makefile#2 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.2 (Berkeley) 2/3/94 -# $FreeBSD: src/lib/libc/Makefile,v 1.67 2006/05/22 05:12:44 ache Exp $ +# $FreeBSD: src/lib/libc/Makefile,v 1.68 2006/08/22 07:55:13 ru Exp $ SHLIBDIR?= /lib @@ -41,8 +41,7 @@ .include "${.CURDIR}/net/Makefile.inc" .include "${.CURDIR}/nls/Makefile.inc" .include "${.CURDIR}/posix1e/Makefile.inc" -.if ${MACHINE_ARCH} != "alpha" && \ - ${MACHINE_ARCH} != "amd64" && \ +.if ${MACHINE_ARCH} != "amd64" && \ ${MACHINE_ARCH} != "ia64" && \ ${MACHINE_ARCH} != "sparc64" .include "${.CURDIR}/quad/Makefile.inc" ==== //depot/projects/arm/src/lib/libc/stdio/findfp.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)findfp.c 8.2 (Berkeley) 1/4/94"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/findfp.c,v 1.29 2004/05/22 15:19:41 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/findfp.c,v 1.30 2006/08/22 07:55:15 ru Exp $"); #include #include @@ -86,7 +86,7 @@ * with future versions of libc. Or rather it allows us to work with * libraries that have been built with a newer libc that defines these * symbols and expects libc to provide them. We only have need to support - * i386 and alpha because they are the only "old" systems we have deployed. + * i386 because it is the only "old" system we have deployed. */ FILE *__stdinp = &__sF[0]; FILE *__stdoutp = &__sF[1]; ==== //depot/projects/arm/src/lib/libc_r/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc_r/Makefile,v 1.44 2006/04/12 19:51:14 ru Exp $ +# $FreeBSD: src/lib/libc_r/Makefile,v 1.45 2006/08/22 07:51:07 ru Exp $ # # All library objects contain FreeBSD revision strings by default; they may be # excluded as a space-saving measure. To produce a library that does @@ -25,7 +25,7 @@ .include "${.CURDIR}/uthread/Makefile.inc" .include "${.CURDIR}/sys/Makefile.inc" -.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "sparc64" +.if ${MACHINE_ARCH} == "sparc64" SYMLINKS+=lib${LIB}.a ${LIBDIR}/libpthread.a .if !defined(NO_PIC) SYMLINKS+=lib${LIB}.so ${LIBDIR}/libpthread.so ==== //depot/projects/arm/src/lib/libpthread/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libpthread/Makefile,v 1.58 2006/04/12 19:42:20 ru Exp $ +# $FreeBSD: src/lib/libpthread/Makefile,v 1.59 2006/08/22 07:51:07 ru Exp $ # # All library objects contain FreeBSD revision strings by default; they may be # excluded as a space-saving measure. To produce a library that does @@ -7,7 +7,7 @@ # To included legacy CSRG sccsid strings, add -DLIBC_SCCS and -DSYSLIBC_SCCS # (for system call stubs) to CFLAGS below. -DSYSLIBC_SCCS affects just the # system call stubs. -.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "sparc64" +.if ${MACHINE_ARCH} == "sparc64" LIB=kse .else LIB=pthread ==== //depot/projects/arm/src/lib/libstand/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libstand/Makefile,v 1.55 2005/07/15 12:29:31 ache Exp $ +# $FreeBSD: src/lib/libstand/Makefile,v 1.56 2006/08/22 08:03:01 ru Exp $ # Originally from $NetBSD: Makefile,v 1.21 1997/10/26 22:08:38 lukem Exp $ # # Notes: @@ -15,9 +15,6 @@ CFLAGS+= -ffreestanding -Wformat CFLAGS+= -I${.CURDIR} -.if ${MACHINE_ARCH} == "alpha" -CFLAGS+= -mno-fp-regs -.endif .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" CFLAGS+= -mpreferred-stack-boundary=2 CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 @@ -57,53 +54,6 @@ strcmp.c strcpy.c strcspn.c strlen.c strncat.c strncmp.c strncpy.c \ strpbrk.c strrchr.c strsep.c strspn.c strstr.c strtok.c swab.c .endif -.if ${MACHINE_ARCH} == "alpha" -.PATH: ${.CURDIR}/../libc/alpha/string -SRCS+= bcmp.c bcopy.S bzero.S ffs.S index.c memccpy.c memchr.c memcmp.c \ - memcpy.S memmove.S memset.c rindex.c strcat.c strchr.c \ - strcmp.c strcpy.c strcspn.c strlen.c \ - strncat.c strncmp.c strncpy.c strpbrk.c strrchr.c strsep.c \ - strspn.c strstr.c strtok.c swab.c - -SRCS+= __divqu.S __divq.S __divlu.S __divl.S -SRCS+= __remqu.S __remq.S __remlu.S __reml.S - -CLEANFILES+= __divqu.S __divq.S __divlu.S __divl.S -CLEANFILES+= __remqu.S __remq.S __remlu.S __reml.S - - -__divqu.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 - m4 -DNAME=__divqu -DOP=div -DS=false -DWORDSIZE=64 \ - ${.ALLSRC} > ${.TARGET} - -__divq.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 - m4 -DNAME=__divq -DOP=div -DS=true -DWORDSIZE=64 \ - ${.ALLSRC} > ${.TARGET} - -__divlu.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 - m4 -DNAME=__divlu -DOP=div -DS=false -DWORDSIZE=32 \ - ${.ALLSRC} > ${.TARGET} - -__divl.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 - m4 -DNAME=__divl -DOP=div -DS=true -DWORDSIZE=32 \ - ${.ALLSRC} > ${.TARGET} - -__remqu.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 - m4 -DNAME=__remqu -DOP=rem -DS=false -DWORDSIZE=64 \ - ${.ALLSRC} > ${.TARGET} - -__remq.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 - m4 -DNAME=__remq -DOP=rem -DS=true -DWORDSIZE=64 \ - ${.ALLSRC} > ${.TARGET} - -__remlu.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 - m4 -DNAME=__remlu -DOP=rem -DS=false -DWORDSIZE=32 \ - ${.ALLSRC} > ${.TARGET} - -__reml.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 - m4 -DNAME=__reml -DOP=rem -DS=true -DWORDSIZE=32 \ - ${.ALLSRC} > ${.TARGET} -.endif .if ${MACHINE_ARCH} == "ia64" .PATH: ${.CURDIR}/../libc/ia64/string SRCS+= bcmp.c bcopy.S bzero.S ffs.S index.c memccpy.c memchr.c memcmp.c \ ==== //depot/projects/arm/src/lib/libthr/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libthr/Makefile,v 1.19 2006/04/12 19:42:20 ru Exp $ +# $FreeBSD: src/lib/libthr/Makefile,v 1.20 2006/08/22 07:51:06 ru Exp $ # # All library objects contain FreeBSD revision strings by default; they may be # excluded as a space-saving measure. To produce a library that does @@ -8,7 +8,7 @@ # (for system call stubs) to CFLAGS below. -DSYSLIBC_SCCS affects just the # system call stubs. -.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "sparc64" +.if ${MACHINE_ARCH} == "sparc64" SHLIBDIR?= /lib .endif @@ -42,7 +42,7 @@ .include "${.CURDIR}/sys/Makefile.inc" .include "${.CURDIR}/thread/Makefile.inc" -.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "sparc64" +.if ${MACHINE_ARCH} == "sparc64" SYMLINKS+=lib${LIB}.a ${LIBDIR}/libpthread.a .if !defined(NO_PIC) SYMLINKS+=lib${LIB}.so ${LIBDIR}/libpthread.so ==== //depot/projects/arm/src/lib/libutil/login.conf.5#2 (text+ko) ==== @@ -17,9 +17,9 @@ .\" 5. Modifications may be freely made to this file providing the above .\" conditions are met. .\" -.\" $FreeBSD: src/lib/libutil/login.conf.5,v 1.57 2006/04/19 17:46:27 brueffer Exp $ +.\" $FreeBSD: src/lib/libutil/login.conf.5,v 1.58 2006/08/23 09:54:46 yar Exp $ .\" -.Dd April 19, 2006 +.Dd August 23, 2006 .Dt LOGIN.CONF 5 .Os .Sh NAME @@ -373,6 +373,11 @@ .It Sy "Name Type Notes Description .It "accounted bool false Enable session time accounting for all users in this class. +.It "auth list passwd Allowed authentication styles. +The first item is the default style. +.It "auth-" Ns Ar type Ta "list Allowed authentication styles for the +authentication +.Ar type . .It "autodelete time Time after expiry when account is auto-deleted. .It "bootfull bool false Enable 'boot only if ttygroup is full' strategy when terminating sessions. ==== //depot/projects/arm/src/release/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/release/Makefile,v 1.911 2006/06/09 03:40:04 cperciva Exp $ +# $FreeBSD: src/release/Makefile,v 1.912 2006/08/22 07:51:08 ru Exp $ # # make release [BUILDNAME=somename] CHROOTDIR=/some/dir CVSROOT=/cvs/dir \ # [RELEASETAG=tag] @@ -206,17 +206,6 @@ MFSSIZE= 4320 MFSINODE= 8000 MFSLABEL= minimum3 -.elif ${TARGET_ARCH} == "alpha" -MAKE_FLOPPIES= true -FLOPPYSIZE= 1440 -FLOPPYSPLITSIZE= 1392 -FLOPPYINODE= 40000 -FLOPPYLABEL= fd1440 -BOOTINODE= 80000 -MFSSIZE= 4320 -MFSINODE= 8000 -MFSLABEL= auto -SPLIT_MFSROOT= .elif ${TARGET_ARCH} == "sparc64" DISKLABEL= sunlabel MFSSIZE= 4096 ==== //depot/projects/arm/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#7 (text+ko) ==== @@ -3,7 +3,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.962 2006/08/21 00:59:40 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.964 2006/08/24 14:45:56 bmah Exp $ 2000 @@ -350,9 +350,9 @@ implemented. &os; now runs on the Xbox, whose architecture is nearly identical - to the i386. For details of the latest development, - see - and . + to the i386. For details of the latest development, see + . + &merged; Boot Loader Changes @@ -767,6 +767,13 @@ for example, by using tagged rule option. For more details, see &man.ipfw.8;. + The IPFIREWALL_FORWARD_EXTENDED kernel + option has been removed. This option was used to permit + &man.ipfw.4; to redirect packets with local destinations. + This behavior is now always enabled when + the IPFIREWALL_FORWARD kernel option is + enabled. &merged; + The ip6fw(8) packet filter has been removed. Since &man.ipfw.4; has gained IPv6 support, it should be used instead. Please note that some rules might need to be adjusted. @@ -1084,6 +1091,10 @@ flag, which causes it to ignore files and directories with the nodump flag set. &merged; + The &man.fsdb.8; utility now supports changing the birth + time of files on UFS2 file systems using the new + the btime command. + The &man.find.1; program now supports and other related primaries, which can be used to create expressions based on a file's creation time. &merged; @@ -1557,7 +1568,7 @@ &merged; IPFilter has been updated from - 4.1.8 to 4.1.13. + 4.1.8 to 4.1.13. &merged; less has been updated from v381 to v394. @@ -1570,10 +1581,7 @@ &merged; sendmail has been updated from - 8.13.4 to 8.13.6. &merged; - - sendmail has been updated from - 8.13.6 to 8.13.8. + 8.13.4 to 8.13.8. &merged; The timezone database has been updated from the tzdata2005l release to the ==== //depot/projects/arm/src/rescue/rescue/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -#$FreeBSD: src/rescue/rescue/Makefile,v 1.50 2006/04/10 09:32:50 ru Exp $ +#$FreeBSD: src/rescue/rescue/Makefile,v 1.51 2006/08/22 07:51:08 ru Exp $ # @(#)Makefile 8.1 (Berkeley) 6/2/93 NO_MAN= @@ -163,10 +163,6 @@ CRUNCH_PROGS_sbin+= sunlabel .endif -.if ${MACHINE_ARCH} == "alpha" -CRUNCH_ALIAS_bsdlabel= disklabel -.endif - .if ${MACHINE_ARCH} == "amd64" CRUNCH_PROGS_sbin+= fdisk CRUNCH_ALIAS_bsdlabel= disklabel ==== //depot/projects/arm/src/sbin/bsdlabel/Makefile#2 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.2 (Berkeley) 3/17/94 -# $FreeBSD: src/sbin/bsdlabel/Makefile,v 1.19 2004/01/11 09:11:10 nyan Exp $ +# $FreeBSD: src/sbin/bsdlabel/Makefile,v 1.20 2006/08/22 07:51:09 ru Exp $ .PATH: ${.CURDIR}/../../sys/geom @@ -8,8 +8,7 @@ #MAN= bsdlabel.5 MAN+= bsdlabel.8 -.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "alpha" || \ - ${MACHINE_ARCH} == "amd64" +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" LINKS= ${BINDIR}/bsdlabel ${BINDIR}/disklabel MLINKS= bsdlabel.8 disklabel.8 .endif ==== //depot/projects/arm/src/sbin/fsdb/fsdb.8#2 (text+ko) ==== >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Aug 24 17:36:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 569D116A4E7; Thu, 24 Aug 2006 17:36:50 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1AA0516A4DD for ; Thu, 24 Aug 2006 17:36:50 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D0D4A43D46 for ; Thu, 24 Aug 2006 17:36:49 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OHanbq019533 for ; Thu, 24 Aug 2006 17:36:49 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OHanBH019530 for perforce@freebsd.org; Thu, 24 Aug 2006 17:36:49 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Aug 2006 17:36:49 GMT Message-Id: <200608241736.k7OHanBH019530@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104963 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 17:36:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=104963 Change 104963 by rwatson@rwatson_sesame on 2006/08/24 17:35:48 Add a comment about an API usability problem relating to our whole record read model, which may cause problems when combining a series of long records with a short buffer and an event model. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_pipe.c#27 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_pipe.c#27 (text+ko) ==== @@ -912,6 +912,13 @@ * records that would be truncated if actually passed to the * process. This helps maintain the discreet record read * interface. + * + * XXXRW: This causes a somewhat tricky problem when a + * program checks for readability using kqueue/select/poll, + * then provides too small a buffer to hold any of the + * available records. We should probably, in that situation, + * also return EAGAIN rather than blocking unconditionally, + * or possible even an error each time a record is dropped. */ while ((ape = audit_pipe_pop(ap)) == NULL) { if (ap->ap_flags & AUDIT_PIPE_NBIO) { From owner-p4-projects@FreeBSD.ORG Thu Aug 24 18:36:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6379016A4E6; Thu, 24 Aug 2006 18:36:08 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3CE4F16A4E0 for ; Thu, 24 Aug 2006 18:36:08 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CD48243D45 for ; Thu, 24 Aug 2006 18:36:07 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OIa77e023665 for ; Thu, 24 Aug 2006 18:36:07 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OIa7hQ023656 for perforce@freebsd.org; Thu, 24 Aug 2006 18:36:07 GMT (envelope-from piso@freebsd.org) Date: Thu, 24 Aug 2006 18:36:07 GMT Message-Id: <200608241836.k7OIa7hQ023656@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104970 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 18:36:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=104970 Change 104970 by piso@piso_newluxor on 2006/08/24 18:35:27 Axe some 4.x compatibility code i left in. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_db.c#4 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#7 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_local.h#3 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_proxy.c#4 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_db.c#4 (text+ko) ==== @@ -373,9 +373,7 @@ error = 0; handler_chain_init(); break; -#if __FreeBSD_version >= 500000 case MOD_QUIESCE: -#endif case MOD_UNLOAD: handler_chain_destroy(); finishoff(); ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#7 (text+ko) ==== @@ -58,11 +58,7 @@ #include #include #include -#if __FreeBSD_version < 500000 -#include -#else #include -#endif #else #include #include ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_local.h#3 (text+ko) ==== @@ -51,16 +51,11 @@ #include #ifdef _KERNEL -#if __FreeBSD_version >= 500000 #include #include #include #include #include -#else -#include -#include -#endif #endif /* XXX: LibAliasSetTarget() uses this constant. */ ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_proxy.c#4 (text+ko) ==== @@ -60,11 +60,7 @@ #include #include #include -#if __FreeBSD_version < 500000 -#include -#else #include -#endif #else #include #include From owner-p4-projects@FreeBSD.ORG Thu Aug 24 18:45:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DA58E16A4DF; Thu, 24 Aug 2006 18:45:20 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 94F5116A4DD for ; Thu, 24 Aug 2006 18:45:20 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 460B943D45 for ; Thu, 24 Aug 2006 18:45:20 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OIjK1d024166 for ; Thu, 24 Aug 2006 18:45:20 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OIjKi6024163 for perforce@freebsd.org; Thu, 24 Aug 2006 18:45:20 GMT (envelope-from gonzo@FreeBSD.org) Date: Thu, 24 Aug 2006 18:45:20 GMT Message-Id: <200608241845.k7OIjKi6024163@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 104972 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 18:45:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=104972 Change 104972 by gonzo@gonzo_hq on 2006/08/24 18:45:04 o Replace quotes in includes with brackets. Pointy hat from: Warner Losh" Affected files ... .. //depot/projects/mips2/src/lib/libc/mips/SYS.h#3 edit Differences ... ==== //depot/projects/mips2/src/lib/libc/mips/SYS.h#3 (text+ko) ==== @@ -68,7 +68,7 @@ #include -#include "machine/asm.h" +#include /* * If compiling for shared libs, Emit sysV ABI PIC segment pseudo-ops. From owner-p4-projects@FreeBSD.ORG Thu Aug 24 18:54:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1CFEF16A4E5; Thu, 24 Aug 2006 18:54:33 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D0F2316A4DA for ; Thu, 24 Aug 2006 18:54:32 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 75DB943D4C for ; Thu, 24 Aug 2006 18:54:32 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OIsWFQ024606 for ; Thu, 24 Aug 2006 18:54:32 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OIsWqY024602 for perforce@freebsd.org; Thu, 24 Aug 2006 18:54:32 GMT (envelope-from piso@freebsd.org) Date: Thu, 24 Aug 2006 18:54:32 GMT Message-Id: <200608241854.k7OIsWqY024602@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 104973 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 18:54:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=104973 Change 104973 by piso@piso_newluxor on 2006/08/24 18:53:46 IFC Affected files ... .. //depot/projects/soc2005/libalias/Makefile.inc1#4 integrate .. //depot/projects/soc2005/libalias/gnu/usr.bin/Makefile#3 integrate .. //depot/projects/soc2005/libalias/share/man/man4/fast_ipsec.4#3 integrate .. //depot/projects/soc2005/libalias/share/man/man4/ipsec.4#2 integrate .. //depot/projects/soc2005/libalias/share/mk/bsd.port.mk#2 integrate .. //depot/projects/soc2005/libalias/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#3 integrate .. //depot/projects/soc2005/libalias/sys/security/audit/audit_pipe.c#2 integrate Differences ... ==== //depot/projects/soc2005/libalias/Makefile.inc1#4 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.553 2006/08/22 07:51:05 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.554 2006/08/24 17:02:26 imp Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -1032,8 +1032,9 @@ .for _lib in ${_startup_libs} ${_prebuild_libs:Nlib/libpam} ${_generic_libs} ${_lib}__L: .PHONY .if exists(${.CURDIR}/${_lib}) - ${_+_}@${ECHODIR} "===> ${_lib} (depend,all,install)"; \ + ${_+_}@${ECHODIR} "===> ${_lib} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_lib}; \ + ${MAKE} DIRPRFX=${_lib}/ obj; \ ${MAKE} DIRPRFX=${_lib}/ depend; \ ${MAKE} DIRPRFX=${_lib}/ all; \ ${MAKE} DIRPRFX=${_lib}/ install @@ -1044,8 +1045,9 @@ # static PAM library, and dynamic PAM library before dynamic PAM # modules. lib/libpam__L: .PHONY - ${_+_}@${ECHODIR} "===> lib/libpam (depend,all,install)"; \ + ${_+_}@${ECHODIR} "===> lib/libpam (obj,depend,all,install)"; \ cd ${.CURDIR}/lib/libpam; \ + ${MAKE} DIRPRFX=lib/libpam/ obj; \ ${MAKE} DIRPRFX=lib/libpam/ depend; \ ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET all; \ ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET install ==== //depot/projects/soc2005/libalias/gnu/usr.bin/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.89 2006/08/21 18:25:43 marcel Exp $ +# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.90 2006/08/24 15:46:29 marcel Exp $ .include @@ -24,7 +24,7 @@ sort \ ${_texinfo} -.if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "powerpc" +.if ${MACHINE_ARCH} == "arm" MK_GDB= no # not yet .endif ==== //depot/projects/soc2005/libalias/share/man/man4/fast_ipsec.4#3 (text+ko) ==== @@ -22,9 +22,9 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/fast_ipsec.4,v 1.4 2006/06/26 22:30:07 thompsa Exp $ +.\" $FreeBSD: src/share/man/man4/fast_ipsec.4,v 1.5 2006/08/24 17:07:19 danger Exp $ .\" -.Dd January 20, 2003 +.Dd August 24, 2006 .Dt FAST_IPSEC 4 .Os .Sh NAME @@ -32,6 +32,7 @@ .Nd hardware-accelerated IP Security Protocols .Sh SYNOPSIS .Cd "options FAST_IPSEC" +.Cd "options IPSEC_FILTERGIF" .Cd "device crypto" .Pp .Bl -item -compact @@ -69,6 +70,11 @@ The user should refer to .Xr ipsec 4 for basic information on setting up and using these protocols. +Note that it is not currently possible to use +.Nm +in conjuction with the +.Tn "KAME IPsec" +implementation. .Pp System configuration requires the .Xr crypto 4 @@ -83,6 +89,12 @@ .Dq enc0 , to perform packet filtering before outbound encryption and after decapsulation inbound. +.Pp +To properly filter +.Xr gif 4 +tunnels with firewalls, add +.Cd "options IPSEC_FILTERGIF" +to the kernel configuration file. .Sh DIAGNOSTICS To be added. .Sh SEE ALSO ==== //depot/projects/soc2005/libalias/share/man/man4/ipsec.4#2 (text+ko) ==== @@ -27,9 +27,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ipsec.4,v 1.18 2006/02/14 13:20:09 gnn Exp $ +.\" $FreeBSD: src/share/man/man4/ipsec.4,v 1.19 2006/08/24 17:07:19 danger Exp $ .\" -.Dd February 14, 2006 +.Dd August 24, 2006 .Dt IPSEC 4 .Os .Sh NAME @@ -39,6 +39,10 @@ .In sys/types.h .In netinet/in.h .In netinet6/ipsec.h +.Cd "options IPSEC" +.Cd "options IPSEC_DEBUG" +.Cd "options IPSEC_ESP" +.Cd "options IPSEC_FILTERGIF" .Sh DESCRIPTION .Nm is a security protocol implemented within the Internet Protocol layer @@ -253,6 +257,7 @@ .Xr ioctl 2 , .Xr socket 2 , .Xr ipsec_set_policy 3 , +.Xr fast_ipsec 4 , .Xr icmp6 4 , .Xr intro 4 , .Xr ip6 4 , ==== //depot/projects/soc2005/libalias/share/mk/bsd.port.mk#2 (text+ko) ==== @@ -1,7 +1,10 @@ -# $FreeBSD: src/share/mk/bsd.port.mk,v 1.307 2004/07/02 20:47:18 eik Exp $ +# $FreeBSD: src/share/mk/bsd.port.mk,v 1.308 2006/08/24 18:04:49 obrien Exp $ PORTSDIR?= /usr/ports BSDPORTMK?= ${PORTSDIR}/Mk/bsd.port.mk +# Needed to keep bsd.own.mk from reading in /etc/src.conf when building ports. +SRCCONF= /dev/null + .include .include "${BSDPORTMK}" ==== //depot/projects/soc2005/libalias/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ * SUCH DAMAGE. * * $Id: ng_btsocket_rfcomm.c,v 1.28 2003/09/14 23:29:06 max Exp $ - * $FreeBSD: src/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c,v 1.22 2006/07/24 15:20:07 rwatson Exp $ + * $FreeBSD: src/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c,v 1.23 2006/08/24 16:51:02 emax Exp $ */ #include @@ -1220,7 +1220,8 @@ ng_btsocket_rfcomm_session_p s = NULL; struct sockaddr_l2cap l2sa; struct sockopt l2sopt; - int mtu, error; + int error; + u_int16_t mtu; mtx_assert(&ng_btsocket_rfcomm_sessions_mtx, MA_OWNED); ==== //depot/projects/soc2005/libalias/sys/security/audit/audit_pipe.c#2 (text) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/security/audit/audit_pipe.c,v 1.7 2006/06/05 14:48:17 rwatson Exp $ + * $FreeBSD: src/sys/security/audit/audit_pipe.c,v 1.8 2006/08/24 17:42:38 rwatson Exp $ */ #include @@ -172,6 +172,7 @@ static d_read_t audit_pipe_read; static d_ioctl_t audit_pipe_ioctl; static d_poll_t audit_pipe_poll; +static d_kqfilter_t audit_pipe_kqfilter; static struct cdevsw audit_pipe_cdevsw = { .d_version = D_VERSION, @@ -181,9 +182,20 @@ .d_read = audit_pipe_read, .d_ioctl = audit_pipe_ioctl, .d_poll = audit_pipe_poll, + .d_kqfilter = audit_pipe_kqfilter, .d_name = AUDIT_PIPE_NAME, }; +static int audit_pipe_kqread(struct knote *note, long hint); +static void audit_pipe_kqdetach(struct knote *note); + +static struct filterops audit_pipe_read_filterops = { + .f_isfd = 1, + .f_attach = NULL, + .f_detach = audit_pipe_kqdetach, + .f_event = audit_pipe_kqread, +}; + /* * Some global statistics on audit pipes. */ @@ -425,6 +437,7 @@ ap->ap_inserts++; ap->ap_qlen++; selwakeuppri(&ap->ap_selinfo, PSOCK); + KNOTE_LOCKED(&ap->ap_selinfo.si_note, 0); if (ap->ap_flags & AUDIT_PIPE_ASYNC) pgsigio(&ap->ap_sigio, SIGIO, 0); } @@ -520,6 +533,8 @@ return (NULL); ap->ap_qlimit = AUDIT_PIPE_QLIMIT_DEFAULT; TAILQ_INIT(&ap->ap_queue); + knlist_init(&ap->ap_selinfo.si_note, &audit_pipe_mtx, NULL, NULL, + NULL); /* * Default flags, naflags, and auid-specific preselection settings to @@ -533,6 +548,9 @@ TAILQ_INIT(&ap->ap_preselect_list); ap->ap_preselect_mode = AUDITPIPE_PRESELECT_MODE_TRAIL; + /* + * Add to global list and update global statistics. + */ TAILQ_INSERT_HEAD(&audit_pipe_list, ap, ap_list); audit_pipe_count++; audit_pipe_ever++; @@ -572,6 +590,7 @@ audit_pipe_preselect_flush_locked(ap); audit_pipe_flush(ap); + knlist_destroy(&ap->ap_selinfo.si_note); TAILQ_REMOVE(&audit_pipe_list, ap, ap_list); free(ap, M_AUDIT_PIPE); audit_pipe_count--; @@ -946,6 +965,71 @@ } /* + * Audit pipe kqfilter. + */ +static int +audit_pipe_kqfilter(struct cdev *dev, struct knote *kn) +{ + struct audit_pipe *ap; + + ap = dev->si_drv1; + KASSERT(ap != NULL, ("audit_pipe_kqfilter: ap == NULL")); + + if (kn->kn_filter != EVFILT_READ) + return (EINVAL); + + kn->kn_fop = &audit_pipe_read_filterops; + kn->kn_hook = ap; + + mtx_lock(&audit_pipe_mtx); + knlist_add(&ap->ap_selinfo.si_note, kn, 1); + mtx_unlock(&audit_pipe_mtx); + return (0); +} + +/* + * Return true if there are records available for reading on the pipe. + */ +static int +audit_pipe_kqread(struct knote *kn, long hint) +{ + struct audit_pipe_entry *ape; + struct audit_pipe *ap; + + mtx_assert(&audit_pipe_mtx, MA_OWNED); + + ap = (struct audit_pipe *)kn->kn_hook; + KASSERT(ap != NULL, ("audit_pipe_kqread: ap == NULL")); + + if (ap->ap_qlen != 0) { + ape = TAILQ_FIRST(&ap->ap_queue); + KASSERT(ape != NULL, ("audit_pipe_kqread: ape == NULL")); + + kn->kn_data = ape->ape_record_len; + return (1); + } else { + kn->kn_data = 0; + return (0); + } +} + +/* + * Detach kqueue state from audit pipe. + */ +static void +audit_pipe_kqdetach(struct knote *kn) +{ + struct audit_pipe *ap; + + ap = (struct audit_pipe *)kn->kn_hook; + KASSERT(ap != NULL, ("audit_pipe_kqdetach: ap == NULL")); + + mtx_lock(&audit_pipe_mtx); + knlist_remove(&ap->ap_selinfo.si_note, kn, 1); + mtx_unlock(&audit_pipe_mtx); +} + +/* * Initialize the audit pipe system. */ static void From owner-p4-projects@FreeBSD.ORG Thu Aug 24 20:01:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BD15516A4E2; Thu, 24 Aug 2006 20:01:06 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7745316A4DE for ; Thu, 24 Aug 2006 20:01:06 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C100A43D62 for ; Thu, 24 Aug 2006 20:01:01 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OK113D029470 for ; Thu, 24 Aug 2006 20:01:01 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OK10Cp029464 for perforce@freebsd.org; Thu, 24 Aug 2006 20:01:00 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Aug 2006 20:01:00 GMT Message-Id: <200608242001.k7OK10Cp029464@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104982 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 20:01:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=104982 Change 104982 by rwatson@rwatson_zoo on 2006/08/24 20:00:39 Integrate TrustedBSD base branch from FreeBSD CVS: - Loop back audit pipe kqueue support. Affected files ... .. //depot/projects/trustedbsd/base/Makefile.inc1#77 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/Makefile#18 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#107 integrate .. //depot/projects/trustedbsd/base/sbin/fsdb/fsdb.8#12 integrate .. //depot/projects/trustedbsd/base/share/man/man4/fast_ipsec.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ipsec.4#4 integrate .. //depot/projects/trustedbsd/base/share/mk/bsd.port.mk#4 integrate .. //depot/projects/trustedbsd/base/sys/kern/vfs_mount.c#50 integrate .. //depot/projects/trustedbsd/base/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#14 integrate .. //depot/projects/trustedbsd/base/sys/netgraph/ng_fec.c#16 integrate .. //depot/projects/trustedbsd/base/sys/security/audit/audit_pipe.c#6 integrate Differences ... ==== //depot/projects/trustedbsd/base/Makefile.inc1#77 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.553 2006/08/22 07:51:05 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.554 2006/08/24 17:02:26 imp Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -1032,8 +1032,9 @@ .for _lib in ${_startup_libs} ${_prebuild_libs:Nlib/libpam} ${_generic_libs} ${_lib}__L: .PHONY .if exists(${.CURDIR}/${_lib}) - ${_+_}@${ECHODIR} "===> ${_lib} (depend,all,install)"; \ + ${_+_}@${ECHODIR} "===> ${_lib} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_lib}; \ + ${MAKE} DIRPRFX=${_lib}/ obj; \ ${MAKE} DIRPRFX=${_lib}/ depend; \ ${MAKE} DIRPRFX=${_lib}/ all; \ ${MAKE} DIRPRFX=${_lib}/ install @@ -1044,8 +1045,9 @@ # static PAM library, and dynamic PAM library before dynamic PAM # modules. lib/libpam__L: .PHONY - ${_+_}@${ECHODIR} "===> lib/libpam (depend,all,install)"; \ + ${_+_}@${ECHODIR} "===> lib/libpam (obj,depend,all,install)"; \ cd ${.CURDIR}/lib/libpam; \ + ${MAKE} DIRPRFX=lib/libpam/ obj; \ ${MAKE} DIRPRFX=lib/libpam/ depend; \ ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET all; \ ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET install ==== //depot/projects/trustedbsd/base/gnu/usr.bin/Makefile#18 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.89 2006/08/21 18:25:43 marcel Exp $ +# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.90 2006/08/24 15:46:29 marcel Exp $ .include @@ -24,7 +24,7 @@ sort \ ${_texinfo} -.if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "powerpc" +.if ${MACHINE_ARCH} == "arm" MK_GDB= no # not yet .endif ==== //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#107 (text+ko) ==== @@ -3,7 +3,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.963 2006/08/23 03:42:36 gshapiro Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.964 2006/08/24 14:45:56 bmah Exp $ 2000 @@ -350,9 +350,9 @@ implemented. &os; now runs on the Xbox, whose architecture is nearly identical - to the i386. For details of the latest development, - see - and . + to the i386. For details of the latest development, see + . + &merged; Boot Loader Changes @@ -767,6 +767,13 @@ for example, by using tagged rule option. For more details, see &man.ipfw.8;. + The IPFIREWALL_FORWARD_EXTENDED kernel + option has been removed. This option was used to permit + &man.ipfw.4; to redirect packets with local destinations. + This behavior is now always enabled when + the IPFIREWALL_FORWARD kernel option is + enabled. &merged; + The ip6fw(8) packet filter has been removed. Since &man.ipfw.4; has gained IPv6 support, it should be used instead. Please note that some rules might need to be adjusted. @@ -1084,6 +1091,10 @@ flag, which causes it to ignore files and directories with the nodump flag set. &merged; + The &man.fsdb.8; utility now supports changing the birth + time of files on UFS2 file systems using the new + the btime command. + The &man.find.1; program now supports and other related primaries, which can be used to create expressions based on a file's creation time. &merged; @@ -1557,7 +1568,7 @@ &merged; IPFilter has been updated from - 4.1.8 to 4.1.13. + 4.1.8 to 4.1.13. &merged; less has been updated from v381 to v394. ==== //depot/projects/trustedbsd/base/sbin/fsdb/fsdb.8#12 (text+ko) ==== @@ -26,9 +26,9 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/sbin/fsdb/fsdb.8,v 1.30 2006/08/23 22:44:00 ceri Exp $ +.\" $FreeBSD: src/sbin/fsdb/fsdb.8,v 1.31 2006/08/24 09:14:02 ceri Exp $ .\" -.Dd August 23, 2006 +.Dd August 24, 2006 .Dt FSDB 8 .Os .Sh NAME @@ -224,6 +224,9 @@ or .Va atimensec field will be set to zero. +Note that +.Cm btime +is available on UFS2 file systems only. .Pp .It Cm quit , q , exit , Em Exit the program. ==== //depot/projects/trustedbsd/base/share/man/man4/fast_ipsec.4#5 (text+ko) ==== @@ -22,9 +22,9 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/fast_ipsec.4,v 1.4 2006/06/26 22:30:07 thompsa Exp $ +.\" $FreeBSD: src/share/man/man4/fast_ipsec.4,v 1.5 2006/08/24 17:07:19 danger Exp $ .\" -.Dd January 20, 2003 +.Dd August 24, 2006 .Dt FAST_IPSEC 4 .Os .Sh NAME @@ -32,6 +32,7 @@ .Nd hardware-accelerated IP Security Protocols .Sh SYNOPSIS .Cd "options FAST_IPSEC" +.Cd "options IPSEC_FILTERGIF" .Cd "device crypto" .Pp .Bl -item -compact @@ -69,6 +70,11 @@ The user should refer to .Xr ipsec 4 for basic information on setting up and using these protocols. +Note that it is not currently possible to use +.Nm +in conjuction with the +.Tn "KAME IPsec" +implementation. .Pp System configuration requires the .Xr crypto 4 @@ -83,6 +89,12 @@ .Dq enc0 , to perform packet filtering before outbound encryption and after decapsulation inbound. +.Pp +To properly filter +.Xr gif 4 +tunnels with firewalls, add +.Cd "options IPSEC_FILTERGIF" +to the kernel configuration file. .Sh DIAGNOSTICS To be added. .Sh SEE ALSO ==== //depot/projects/trustedbsd/base/share/man/man4/ipsec.4#4 (text+ko) ==== @@ -27,9 +27,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ipsec.4,v 1.18 2006/02/14 13:20:09 gnn Exp $ +.\" $FreeBSD: src/share/man/man4/ipsec.4,v 1.19 2006/08/24 17:07:19 danger Exp $ .\" -.Dd February 14, 2006 +.Dd August 24, 2006 .Dt IPSEC 4 .Os .Sh NAME @@ -39,6 +39,10 @@ .In sys/types.h .In netinet/in.h .In netinet6/ipsec.h +.Cd "options IPSEC" +.Cd "options IPSEC_DEBUG" +.Cd "options IPSEC_ESP" +.Cd "options IPSEC_FILTERGIF" .Sh DESCRIPTION .Nm is a security protocol implemented within the Internet Protocol layer @@ -253,6 +257,7 @@ .Xr ioctl 2 , .Xr socket 2 , .Xr ipsec_set_policy 3 , +.Xr fast_ipsec 4 , .Xr icmp6 4 , .Xr intro 4 , .Xr ip6 4 , ==== //depot/projects/trustedbsd/base/share/mk/bsd.port.mk#4 (text+ko) ==== @@ -1,7 +1,10 @@ -# $FreeBSD: src/share/mk/bsd.port.mk,v 1.307 2004/07/02 20:47:18 eik Exp $ +# $FreeBSD: src/share/mk/bsd.port.mk,v 1.308 2006/08/24 18:04:49 obrien Exp $ PORTSDIR?= /usr/ports BSDPORTMK?= ${PORTSDIR}/Mk/bsd.port.mk +# Needed to keep bsd.own.mk from reading in /etc/src.conf when building ports. +SRCCONF= /dev/null + .include .include "${BSDPORTMK}" ==== //depot/projects/trustedbsd/base/sys/kern/vfs_mount.c#50 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/vfs_mount.c,v 1.228 2006/06/27 14:46:31 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/vfs_mount.c,v 1.229 2006/08/24 18:52:28 marius Exp $"); #include #include @@ -693,14 +693,13 @@ if (errmsg_pos != -1 && ((2 * errmsg_pos + 1) < fsoptions->uio_iovcnt) && errmsg_len > 0 && errmsg != NULL) { if (fsoptions->uio_segflg == UIO_SYSSPACE) { - strncpy(fsoptions->uio_iov[2 * errmsg_pos + 1].iov_base, - errmsg, + bcopy(errmsg, + fsoptions->uio_iov[2 * errmsg_pos + 1].iov_base, fsoptions->uio_iov[2 * errmsg_pos + 1].iov_len); } else { - copystr(errmsg, + copyout(errmsg, fsoptions->uio_iov[2 * errmsg_pos + 1].iov_base, - fsoptions->uio_iov[2 * errmsg_pos + 1].iov_len, - NULL); + fsoptions->uio_iov[2 * errmsg_pos + 1].iov_len); } } ==== //depot/projects/trustedbsd/base/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#14 (text+ko) ==== @@ -28,7 +28,7 @@ * SUCH DAMAGE. * * $Id: ng_btsocket_rfcomm.c,v 1.28 2003/09/14 23:29:06 max Exp $ - * $FreeBSD: src/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c,v 1.22 2006/07/24 15:20:07 rwatson Exp $ + * $FreeBSD: src/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c,v 1.23 2006/08/24 16:51:02 emax Exp $ */ #include @@ -1220,7 +1220,8 @@ ng_btsocket_rfcomm_session_p s = NULL; struct sockaddr_l2cap l2sa; struct sockopt l2sopt; - int mtu, error; + int error; + u_int16_t mtu; mtx_assert(&ng_btsocket_rfcomm_sessions_mtx, MA_OWNED); ==== //depot/projects/trustedbsd/base/sys/netgraph/ng_fec.c#16 (text+ko) ==== @@ -34,7 +34,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/netgraph/ng_fec.c,v 1.26 2005/11/11 16:04:57 ru Exp $ + * $FreeBSD: src/sys/netgraph/ng_fec.c,v 1.27 2006/08/24 19:50:00 ru Exp $ */ /*- * Copyright (c) 1996-1999 Whistle Communications, Inc. @@ -1093,6 +1093,7 @@ char ifname[NG_FEC_FEC_NAME_MAX + 1]; struct ifnet *ifp; priv_p priv; + const uint8_t eaddr[ETHER_ADDR_LEN] = {0, 0, 0, 0, 0, 0}; struct ng_fec_bundle *b; int error = 0; @@ -1143,7 +1144,7 @@ log(LOG_WARNING, "%s: can't acquire netgraph name\n", ifname); /* Attach the interface */ - ether_ifattach(ifp, IF_LLADDR(priv->ifp)); + ether_ifattach(ifp, eaddr); callout_handle_init(&priv->fec_ch); /* Override output method with our own */ ==== //depot/projects/trustedbsd/base/sys/security/audit/audit_pipe.c#6 (text) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/security/audit/audit_pipe.c,v 1.7 2006/06/05 14:48:17 rwatson Exp $ + * $FreeBSD: src/sys/security/audit/audit_pipe.c,v 1.8 2006/08/24 17:42:38 rwatson Exp $ */ #include @@ -172,6 +172,7 @@ static d_read_t audit_pipe_read; static d_ioctl_t audit_pipe_ioctl; static d_poll_t audit_pipe_poll; +static d_kqfilter_t audit_pipe_kqfilter; static struct cdevsw audit_pipe_cdevsw = { .d_version = D_VERSION, @@ -181,9 +182,20 @@ .d_read = audit_pipe_read, .d_ioctl = audit_pipe_ioctl, .d_poll = audit_pipe_poll, + .d_kqfilter = audit_pipe_kqfilter, .d_name = AUDIT_PIPE_NAME, }; +static int audit_pipe_kqread(struct knote *note, long hint); +static void audit_pipe_kqdetach(struct knote *note); + +static struct filterops audit_pipe_read_filterops = { + .f_isfd = 1, + .f_attach = NULL, + .f_detach = audit_pipe_kqdetach, + .f_event = audit_pipe_kqread, +}; + /* * Some global statistics on audit pipes. */ @@ -425,6 +437,7 @@ ap->ap_inserts++; ap->ap_qlen++; selwakeuppri(&ap->ap_selinfo, PSOCK); + KNOTE_LOCKED(&ap->ap_selinfo.si_note, 0); if (ap->ap_flags & AUDIT_PIPE_ASYNC) pgsigio(&ap->ap_sigio, SIGIO, 0); } @@ -520,6 +533,8 @@ return (NULL); ap->ap_qlimit = AUDIT_PIPE_QLIMIT_DEFAULT; TAILQ_INIT(&ap->ap_queue); + knlist_init(&ap->ap_selinfo.si_note, &audit_pipe_mtx, NULL, NULL, + NULL); /* * Default flags, naflags, and auid-specific preselection settings to @@ -533,6 +548,9 @@ TAILQ_INIT(&ap->ap_preselect_list); ap->ap_preselect_mode = AUDITPIPE_PRESELECT_MODE_TRAIL; + /* + * Add to global list and update global statistics. + */ TAILQ_INSERT_HEAD(&audit_pipe_list, ap, ap_list); audit_pipe_count++; audit_pipe_ever++; @@ -572,6 +590,7 @@ audit_pipe_preselect_flush_locked(ap); audit_pipe_flush(ap); + knlist_destroy(&ap->ap_selinfo.si_note); TAILQ_REMOVE(&audit_pipe_list, ap, ap_list); free(ap, M_AUDIT_PIPE); audit_pipe_count--; @@ -946,6 +965,71 @@ } /* + * Audit pipe kqfilter. + */ +static int +audit_pipe_kqfilter(struct cdev *dev, struct knote *kn) +{ + struct audit_pipe *ap; + + ap = dev->si_drv1; + KASSERT(ap != NULL, ("audit_pipe_kqfilter: ap == NULL")); + + if (kn->kn_filter != EVFILT_READ) + return (EINVAL); + + kn->kn_fop = &audit_pipe_read_filterops; + kn->kn_hook = ap; + + mtx_lock(&audit_pipe_mtx); + knlist_add(&ap->ap_selinfo.si_note, kn, 1); + mtx_unlock(&audit_pipe_mtx); + return (0); +} + +/* + * Return true if there are records available for reading on the pipe. + */ +static int +audit_pipe_kqread(struct knote *kn, long hint) +{ + struct audit_pipe_entry *ape; + struct audit_pipe *ap; + + mtx_assert(&audit_pipe_mtx, MA_OWNED); + + ap = (struct audit_pipe *)kn->kn_hook; + KASSERT(ap != NULL, ("audit_pipe_kqread: ap == NULL")); + + if (ap->ap_qlen != 0) { + ape = TAILQ_FIRST(&ap->ap_queue); + KASSERT(ape != NULL, ("audit_pipe_kqread: ape == NULL")); + + kn->kn_data = ape->ape_record_len; + return (1); + } else { + kn->kn_data = 0; + return (0); + } +} + +/* + * Detach kqueue state from audit pipe. + */ +static void +audit_pipe_kqdetach(struct knote *kn) +{ + struct audit_pipe *ap; + + ap = (struct audit_pipe *)kn->kn_hook; + KASSERT(ap != NULL, ("audit_pipe_kqdetach: ap == NULL")); + + mtx_lock(&audit_pipe_mtx); + knlist_remove(&ap->ap_selinfo.si_note, kn, 1); + mtx_unlock(&audit_pipe_mtx); +} + +/* * Initialize the audit pipe system. */ static void From owner-p4-projects@FreeBSD.ORG Thu Aug 24 20:04:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 357C816A4E1; Thu, 24 Aug 2006 20:04:10 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 119E716A4DF for ; Thu, 24 Aug 2006 20:04:10 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 33A1C43D73 for ; Thu, 24 Aug 2006 20:04:06 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OK46nE031137 for ; Thu, 24 Aug 2006 20:04:06 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OK45Qu031134 for perforce@freebsd.org; Thu, 24 Aug 2006 20:04:05 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Aug 2006 20:04:05 GMT Message-Id: <200608242004.k7OK45Qu031134@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 104983 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 20:04:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=104983 Change 104983 by rwatson@rwatson_zoo on 2006/08/24 20:03:28 Integrate TrustedBSD audit3 branch from TrustedBSD base branch: - Loop back audit pipe kqueue support. Affected files ... .. //depot/projects/trustedbsd/audit3/Makefile.inc1#14 integrate .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/Makefile#8 integrate .. //depot/projects/trustedbsd/audit3/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#16 integrate .. //depot/projects/trustedbsd/audit3/sbin/fsdb/fsdb.8#6 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/fast_ipsec.4#4 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/ipsec.4#4 integrate .. //depot/projects/trustedbsd/audit3/share/mk/bsd.port.mk#3 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/vfs_mount.c#18 integrate .. //depot/projects/trustedbsd/audit3/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/netgraph/ng_fec.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_pipe.c#28 integrate Differences ... ==== //depot/projects/trustedbsd/audit3/Makefile.inc1#14 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.553 2006/08/22 07:51:05 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.554 2006/08/24 17:02:26 imp Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -1032,8 +1032,9 @@ .for _lib in ${_startup_libs} ${_prebuild_libs:Nlib/libpam} ${_generic_libs} ${_lib}__L: .PHONY .if exists(${.CURDIR}/${_lib}) - ${_+_}@${ECHODIR} "===> ${_lib} (depend,all,install)"; \ + ${_+_}@${ECHODIR} "===> ${_lib} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_lib}; \ + ${MAKE} DIRPRFX=${_lib}/ obj; \ ${MAKE} DIRPRFX=${_lib}/ depend; \ ${MAKE} DIRPRFX=${_lib}/ all; \ ${MAKE} DIRPRFX=${_lib}/ install @@ -1044,8 +1045,9 @@ # static PAM library, and dynamic PAM library before dynamic PAM # modules. lib/libpam__L: .PHONY - ${_+_}@${ECHODIR} "===> lib/libpam (depend,all,install)"; \ + ${_+_}@${ECHODIR} "===> lib/libpam (obj,depend,all,install)"; \ cd ${.CURDIR}/lib/libpam; \ + ${MAKE} DIRPRFX=lib/libpam/ obj; \ ${MAKE} DIRPRFX=lib/libpam/ depend; \ ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET all; \ ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET install ==== //depot/projects/trustedbsd/audit3/gnu/usr.bin/Makefile#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.89 2006/08/21 18:25:43 marcel Exp $ +# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.90 2006/08/24 15:46:29 marcel Exp $ .include @@ -24,7 +24,7 @@ sort \ ${_texinfo} -.if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "powerpc" +.if ${MACHINE_ARCH} == "arm" MK_GDB= no # not yet .endif ==== //depot/projects/trustedbsd/audit3/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#16 (text+ko) ==== @@ -3,7 +3,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.963 2006/08/23 03:42:36 gshapiro Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.964 2006/08/24 14:45:56 bmah Exp $ 2000 @@ -350,9 +350,9 @@ implemented. &os; now runs on the Xbox, whose architecture is nearly identical - to the i386. For details of the latest development, - see - and . + to the i386. For details of the latest development, see + . + &merged; Boot Loader Changes @@ -767,6 +767,13 @@ for example, by using tagged rule option. For more details, see &man.ipfw.8;. + The IPFIREWALL_FORWARD_EXTENDED kernel + option has been removed. This option was used to permit + &man.ipfw.4; to redirect packets with local destinations. + This behavior is now always enabled when + the IPFIREWALL_FORWARD kernel option is + enabled. &merged; + The ip6fw(8) packet filter has been removed. Since &man.ipfw.4; has gained IPv6 support, it should be used instead. Please note that some rules might need to be adjusted. @@ -1084,6 +1091,10 @@ flag, which causes it to ignore files and directories with the nodump flag set. &merged; + The &man.fsdb.8; utility now supports changing the birth + time of files on UFS2 file systems using the new + the btime command. + The &man.find.1; program now supports and other related primaries, which can be used to create expressions based on a file's creation time. &merged; @@ -1557,7 +1568,7 @@ &merged; IPFilter has been updated from - 4.1.8 to 4.1.13. + 4.1.8 to 4.1.13. &merged; less has been updated from v381 to v394. ==== //depot/projects/trustedbsd/audit3/sbin/fsdb/fsdb.8#6 (text+ko) ==== @@ -26,9 +26,9 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/sbin/fsdb/fsdb.8,v 1.30 2006/08/23 22:44:00 ceri Exp $ +.\" $FreeBSD: src/sbin/fsdb/fsdb.8,v 1.31 2006/08/24 09:14:02 ceri Exp $ .\" -.Dd August 23, 2006 +.Dd August 24, 2006 .Dt FSDB 8 .Os .Sh NAME @@ -224,6 +224,9 @@ or .Va atimensec field will be set to zero. +Note that +.Cm btime +is available on UFS2 file systems only. .Pp .It Cm quit , q , exit , Em Exit the program. ==== //depot/projects/trustedbsd/audit3/share/man/man4/fast_ipsec.4#4 (text+ko) ==== @@ -22,9 +22,9 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/fast_ipsec.4,v 1.4 2006/06/26 22:30:07 thompsa Exp $ +.\" $FreeBSD: src/share/man/man4/fast_ipsec.4,v 1.5 2006/08/24 17:07:19 danger Exp $ .\" -.Dd January 20, 2003 +.Dd August 24, 2006 .Dt FAST_IPSEC 4 .Os .Sh NAME @@ -32,6 +32,7 @@ .Nd hardware-accelerated IP Security Protocols .Sh SYNOPSIS .Cd "options FAST_IPSEC" +.Cd "options IPSEC_FILTERGIF" .Cd "device crypto" .Pp .Bl -item -compact @@ -69,6 +70,11 @@ The user should refer to .Xr ipsec 4 for basic information on setting up and using these protocols. +Note that it is not currently possible to use +.Nm +in conjuction with the +.Tn "KAME IPsec" +implementation. .Pp System configuration requires the .Xr crypto 4 @@ -83,6 +89,12 @@ .Dq enc0 , to perform packet filtering before outbound encryption and after decapsulation inbound. +.Pp +To properly filter +.Xr gif 4 +tunnels with firewalls, add +.Cd "options IPSEC_FILTERGIF" +to the kernel configuration file. .Sh DIAGNOSTICS To be added. .Sh SEE ALSO ==== //depot/projects/trustedbsd/audit3/share/man/man4/ipsec.4#4 (text+ko) ==== @@ -27,9 +27,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ipsec.4,v 1.18 2006/02/14 13:20:09 gnn Exp $ +.\" $FreeBSD: src/share/man/man4/ipsec.4,v 1.19 2006/08/24 17:07:19 danger Exp $ .\" -.Dd February 14, 2006 +.Dd August 24, 2006 .Dt IPSEC 4 .Os .Sh NAME @@ -39,6 +39,10 @@ .In sys/types.h .In netinet/in.h .In netinet6/ipsec.h +.Cd "options IPSEC" +.Cd "options IPSEC_DEBUG" +.Cd "options IPSEC_ESP" +.Cd "options IPSEC_FILTERGIF" .Sh DESCRIPTION .Nm is a security protocol implemented within the Internet Protocol layer @@ -253,6 +257,7 @@ .Xr ioctl 2 , .Xr socket 2 , .Xr ipsec_set_policy 3 , +.Xr fast_ipsec 4 , .Xr icmp6 4 , .Xr intro 4 , .Xr ip6 4 , ==== //depot/projects/trustedbsd/audit3/share/mk/bsd.port.mk#3 (text+ko) ==== @@ -1,7 +1,10 @@ -# $FreeBSD: src/share/mk/bsd.port.mk,v 1.307 2004/07/02 20:47:18 eik Exp $ +# $FreeBSD: src/share/mk/bsd.port.mk,v 1.308 2006/08/24 18:04:49 obrien Exp $ PORTSDIR?= /usr/ports BSDPORTMK?= ${PORTSDIR}/Mk/bsd.port.mk +# Needed to keep bsd.own.mk from reading in /etc/src.conf when building ports. +SRCCONF= /dev/null + .include .include "${BSDPORTMK}" ==== //depot/projects/trustedbsd/audit3/sys/kern/vfs_mount.c#18 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/vfs_mount.c,v 1.228 2006/06/27 14:46:31 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/vfs_mount.c,v 1.229 2006/08/24 18:52:28 marius Exp $"); #include #include @@ -694,14 +694,13 @@ if (errmsg_pos != -1 && ((2 * errmsg_pos + 1) < fsoptions->uio_iovcnt) && errmsg_len > 0 && errmsg != NULL) { if (fsoptions->uio_segflg == UIO_SYSSPACE) { - strncpy(fsoptions->uio_iov[2 * errmsg_pos + 1].iov_base, - errmsg, + bcopy(errmsg, + fsoptions->uio_iov[2 * errmsg_pos + 1].iov_base, fsoptions->uio_iov[2 * errmsg_pos + 1].iov_len); } else { - copystr(errmsg, + copyout(errmsg, fsoptions->uio_iov[2 * errmsg_pos + 1].iov_base, - fsoptions->uio_iov[2 * errmsg_pos + 1].iov_len, - NULL); + fsoptions->uio_iov[2 * errmsg_pos + 1].iov_len); } } ==== //depot/projects/trustedbsd/audit3/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#7 (text+ko) ==== @@ -28,7 +28,7 @@ * SUCH DAMAGE. * * $Id: ng_btsocket_rfcomm.c,v 1.28 2003/09/14 23:29:06 max Exp $ - * $FreeBSD: src/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c,v 1.22 2006/07/24 15:20:07 rwatson Exp $ + * $FreeBSD: src/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c,v 1.23 2006/08/24 16:51:02 emax Exp $ */ #include @@ -1220,7 +1220,8 @@ ng_btsocket_rfcomm_session_p s = NULL; struct sockaddr_l2cap l2sa; struct sockopt l2sopt; - int mtu, error; + int error; + u_int16_t mtu; mtx_assert(&ng_btsocket_rfcomm_sessions_mtx, MA_OWNED); ==== //depot/projects/trustedbsd/audit3/sys/netgraph/ng_fec.c#6 (text+ko) ==== @@ -34,7 +34,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/netgraph/ng_fec.c,v 1.26 2005/11/11 16:04:57 ru Exp $ + * $FreeBSD: src/sys/netgraph/ng_fec.c,v 1.27 2006/08/24 19:50:00 ru Exp $ */ /*- * Copyright (c) 1996-1999 Whistle Communications, Inc. @@ -1093,6 +1093,7 @@ char ifname[NG_FEC_FEC_NAME_MAX + 1]; struct ifnet *ifp; priv_p priv; + const uint8_t eaddr[ETHER_ADDR_LEN] = {0, 0, 0, 0, 0, 0}; struct ng_fec_bundle *b; int error = 0; @@ -1143,7 +1144,7 @@ log(LOG_WARNING, "%s: can't acquire netgraph name\n", ifname); /* Attach the interface */ - ether_ifattach(ifp, IF_LLADDR(priv->ifp)); + ether_ifattach(ifp, eaddr); callout_handle_init(&priv->fec_ch); /* Override output method with our own */ ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_pipe.c#28 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/security/audit/audit_pipe.c,v 1.7 2006/06/05 14:48:17 rwatson Exp $ + * $FreeBSD: src/sys/security/audit/audit_pipe.c,v 1.8 2006/08/24 17:42:38 rwatson Exp $ */ #include From owner-p4-projects@FreeBSD.ORG Thu Aug 24 20:57:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0C45216A4E5; Thu, 24 Aug 2006 20:57:14 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DC79F16A4E1 for ; Thu, 24 Aug 2006 20:57:13 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A558543D49 for ; Thu, 24 Aug 2006 20:57:13 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OKvDvC041722 for ; Thu, 24 Aug 2006 20:57:13 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OKvDNm041719 for perforce@freebsd.org; Thu, 24 Aug 2006 20:57:13 GMT (envelope-from imp@freebsd.org) Date: Thu, 24 Aug 2006 20:57:13 GMT Message-Id: <200608242057.k7OKvDNm041719@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104985 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 20:57:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=104985 Change 104985 by imp@imp_lighthouse on 2006/08/24 20:56:38 Fix register offsets for stats registers Submitted by: tisco Affected files ... .. //depot/projects/arm/src/sys/arm/at91/if_atereg.h#10 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/if_atereg.h#10 (text+ko) ==== @@ -52,15 +52,15 @@ #define ETH_DTE 0x58 /* Deferred Transmittion Frame Reg */ #define ETH_LCOL 0x5c /* Late Collision Register */ #define ETH_ECOL 0x60 /* Excessive Collision Register */ -#define ETH_CSE 0x64 /* Carrier Sense Error Register */ -#define ETH_TUE 0x68 /* Transmit Underrun Error Register */ -#define ETH_CDE 0x6c /* Code Error Register */ -#define ETH_ELR 0x70 /* Excessive Length Error Register */ -#define ETH_RJB 0x74 /* Receive Jabber Register */ -#define ETH_USF 0x78 /* Undersize Frame Register */ -#define ETH_SQEE 0x7c /* SQE Test Error Register */ -#define ETH_DRFC 0x80 /* Discarded RX Frame Register */ - /* 0x84 reserved */ +#define ETH_TUE 0x64 /* Transmit Underrun Error Register */ +#define ETH_CSE 0x68 /* Carrier Sense Error Register */ +#define ETH_DRFC 0x6c /* Discarded RX Frame Register */ +#define ETH_ROV 0x68 /* Receive Overrun Register */ +#define ETH_CDE 0x64 /* Code Error Register */ +#define ETH_ELR 0x78 /* Excessive Length Error Register */ +#define ETH_RJB 0x7c /* Receive Jabber Register */ +#define ETH_USF 0x80 /* Undersize Frame Register */ +#define ETH_SQEE 0x84 /* SQE Test Error Register */ /* 0x88 reserved */ /* 0x8c reserved */ #define ETH_HSH 0x90 /* EMAC Hash Address High [63:32] */ From owner-p4-projects@FreeBSD.ORG Thu Aug 24 21:02:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 20BA216A4E2; Thu, 24 Aug 2006 21:02:21 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D5F1016A4E0 for ; Thu, 24 Aug 2006 21:02:20 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6B2D843D5E for ; Thu, 24 Aug 2006 21:02:20 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OL2Kpc042032 for ; Thu, 24 Aug 2006 21:02:20 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OL2KOR042029 for perforce@freebsd.org; Thu, 24 Aug 2006 21:02:20 GMT (envelope-from jb@freebsd.org) Date: Thu, 24 Aug 2006 21:02:20 GMT Message-Id: <200608242102.k7OL2KOR042029@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 104986 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 21:02:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=104986 Change 104986 by jb@jb_freebsd2 on 2006/08/24 21:01:44 IFlibbsdelf Affected files ... .. //depot/projects/dtrace/src/lib/libelf/Makefile#10 integrate .. //depot/projects/dtrace/src/lib/libelf/elf_begin.c#3 integrate .. //depot/projects/dtrace/src/lib/libelf/elf_errmsg.c#7 integrate .. //depot/projects/dtrace/src/lib/libelf/gelf_newehdr.3#5 integrate .. //depot/projects/dtrace/src/lib/libelf/gelf_xlate.c#3 integrate .. //depot/projects/dtrace/src/lib/libelf/gelf_xlatetof.3#2 integrate .. //depot/projects/dtrace/src/lib/libelf/libelf.c#3 integrate .. //depot/projects/dtrace/src/lib/libelf/libelf.h#6 integrate .. //depot/projects/dtrace/src/lib/libelf/libelf_allocate.c#2 integrate .. //depot/projects/dtrace/src/lib/libelf/libelf_convert.m4#8 integrate .. //depot/projects/dtrace/src/lib/libelf/libelf_ehdr.c#5 integrate .. //depot/projects/dtrace/src/lib/libelf/libelf_fsize.m4#2 integrate .. //depot/projects/dtrace/src/lib/libelf/libelf_msize.m4#2 integrate Differences ... ==== //depot/projects/dtrace/src/lib/libelf/Makefile#10 (text+ko) ==== @@ -54,6 +54,8 @@ OBJS+= libelf_convert.o libelf_msize.o +OSRELDATE!= sysctl -n kern.osreldate + WARNS?= 9 MAN= elf.3 \ @@ -153,4 +155,4 @@ # Keep this suffixes line after the include of bsd.lib.mk .SUFFIXES: .m4 .c .m4.c: - m4 -D SRCDIR=${.CURDIR} ${.IMPSRC} > ${.TARGET} + m4 -D SRCDIR=${.CURDIR} -D OSRELDATE=${OSRELDATE} ${.IMPSRC} > ${.TARGET} ==== //depot/projects/dtrace/src/lib/libelf/elf_begin.c#3 (text+ko) ==== @@ -154,7 +154,6 @@ if ((e = _libelf_allocate_elf()) != NULL) { e->e_byteorder = LIBELF_PRIVATE(byteorder); - e->e_class = LIBELF_PRIVATE(class); e->e_fd = fd; e->e_kind = ELF_K_ELF; e->e_cmd = c; ==== //depot/projects/dtrace/src/lib/libelf/elf_errmsg.c#7 (text+ko) ==== @@ -41,8 +41,9 @@ DEFINE_ERROR(NONE, "No Error"), DEFINE_ERROR(ARCHIVE, "Malformed ar(1) archive"), DEFINE_ERROR(ARGUMENT, "Invalid argument"), + DEFINE_ERROR(CLASS, "ELF class mismatch"), + DEFINE_ERROR(DATA, "Invalid data buffer descriptor"), DEFINE_ERROR(HEADER, "Missing or malformed ELF header"), - DEFINE_ERROR(CLASS, "ELF class mismatch"), DEFINE_ERROR(MMAP, "File mapping failed"), DEFINE_ERROR(MODE, "Incorrect ELF descriptor mode"), DEFINE_ERROR(RESOURCE, "Resource exhaustion"), ==== //depot/projects/dtrace/src/lib/libelf/gelf_newehdr.3#5 (text+ko) ==== @@ -78,7 +78,7 @@ If a fresh header structure is allocated, the following members of the structure will be set to zero except the following: .Bl -tag -width indent -.It Va e_ident +.It Va "e_ident[EI_MAG0..EI_MAG3]" Identification bytes at offsets .Dv EI_MAG0 , .Dv EI_MAG1 , @@ -86,17 +86,24 @@ and .Dv EI_MAG3 are set to the ELF signature. -The byte at offset +.It Va "e_ident[EI_CLASS]" +The identification byte at offset .Dv EI_CLASS -is set to the default ELF class for the host, -the byte at offset +is set to the ELF class associated with the function being called +or to argument +.Ar elfclass +for function +.Fn gelf_newehdr . +.It Va "e_ident[EI_DATA]" +The identification byte at offset .Dv EI_DATA is set to -.Dv ELFDATANONE , -and byte at offset +.Dv ELFDATANONE . +.It Va "e_ident[EI_VERSION]" +The identification byte at offset .Dv EI_VERSION -is set to -.Dv EV_NONE . +is set to the ELF library's operating version set by a prior call to +.Xr elf_version 3 . .It Va e_machine is set to .Dv EM_NONE . @@ -104,8 +111,8 @@ is set to .Dv ELF_K_ELF . .It Va e_version -is set to -.Dv EV_NONE . +is set to the ELF library's operating version set by a prior call to +.Xr elf_version 3 . .El .Pp The application is responsible for changing these values ==== //depot/projects/dtrace/src/lib/libelf/gelf_xlate.c#3 (text+ko) ==== @@ -54,13 +54,14 @@ libelf_xlate(Elf_Data *dst, const Elf_Data *src, unsigned int encoding, int elfclass, int direction) { - size_t cnt, fsz, msz; + size_t cnt, dsz, fsz, msz; uintptr_t sb, se, db, de; if (encoding == ELFDATANONE) encoding = LIBELF_PRIVATE(byteorder); - if (encoding != ELFDATA2LSB && encoding != ELFDATA2MSB) { + if ((encoding != ELFDATA2LSB && encoding != ELFDATA2MSB) || + dst == NULL || src == NULL || dst == src) { LIBELF_SET_ERROR(ARGUMENT, 0); return (NULL); } @@ -73,8 +74,14 @@ return (NULL); } - if (src->d_buf == NULL || dst->d_buf == NULL) { - LIBELF_SET_ERROR(ARGUMENT, 0); + if (src->d_buf == NULL || dst->d_buf == NULL || + src->d_size == 0) { + LIBELF_SET_ERROR(DATA, 0); + return (NULL); + } + + if ((int) src->d_type < 0 || src->d_type >= ELF_T_NUM) { + LIBELF_SET_ERROR(DATA, 0); return (NULL); } @@ -87,14 +94,15 @@ assert(msz > 0); if (src->d_size % (direction == ELF_TOMEMORY ? fsz : msz)) { - LIBELF_SET_ERROR(ARGUMENT, 0); + LIBELF_SET_ERROR(DATA, 0); return (NULL); } cnt = src->d_size / msz; + dsz = cnt * fsz; - if (dst->d_size < cnt * fsz) { - LIBELF_SET_ERROR(ARGUMENT, 0); + if (dst->d_size < dsz) { + LIBELF_SET_ERROR(DATA, 0); return (NULL); } @@ -103,15 +111,21 @@ db = (uintptr_t) dst->d_buf; de = db + dst->d_size; - /* Check for overlapping buffers. Note that db == sb is allowed. */ - if ((db > sb && db < se) || (de > sb && de <= se)) { - LIBELF_SET_ERROR(ARGUMENT, 0); + /* + * Check for overlapping buffers. Note that db == sb is + * allowed, in which case the source buffer must also be large + * enough for `n' target objects. For file to native + * conversions, an in-place conversion is not always possible. + */ + if ((db == sb && dsz < src->d_size) || + (db != sb && de > sb && se > db)) { + LIBELF_SET_ERROR(DATA, 0); return (NULL); } if ((direction == ELF_TOMEMORY ? db : sb) % _libelf_malign(src->d_type, elfclass)) { - LIBELF_SET_ERROR(ARGUMENT, 0); + LIBELF_SET_ERROR(DATA, 0); return (NULL); } @@ -155,11 +169,19 @@ Elf_Data * gelf_xlatetom(Elf *e, Elf_Data *dst, const Elf_Data *src, unsigned int encoding) { - return libelf_xlate(dst, src, encoding, e->e_class, ELF_TOMEMORY); + if (e != NULL) + return (libelf_xlate(dst, src, encoding, e->e_class, + ELF_TOMEMORY)); + LIBELF_SET_ERROR(ARGUMENT, 0); + return (NULL); } Elf_Data * gelf_xlatetof(Elf *e, Elf_Data *dst, const Elf_Data *src, unsigned int encoding) { - return libelf_xlate(dst, src, encoding, e->e_class, ELF_TOFILE); + if (e != NULL) + return (libelf_xlate(dst, src, encoding, e->e_class, + ELF_TOFILE)); + LIBELF_SET_ERROR(ARGUMENT, 0); + return (NULL); } ==== //depot/projects/dtrace/src/lib/libelf/gelf_xlatetof.3#2 (text+ko) ==== @@ -181,11 +181,18 @@ These functions may fail with the following errors: .Bl -tag -width "[ELF_E_RESOURCE]" .It Bq Er ELF_E_ARGUMENT -Either of arguments +One of arguments +.Ar src , +.Ar dst +or +.Ar elf +was NULL. +.It Bq Er ELF_E_ARGUMENT +Arguments .Ar src -or +and .Ar dst -were NULL. +were equal. .It Bq Er ELF_E_ARGUMENT The desired encoding parameter was not one of .Dv ELFDATANONE , @@ -194,26 +201,34 @@ .Dv ELFDATA2MSB . .It Bq Er ELF_E_ARGUMENT The +.Ar d_type +field of argument .Ar src -argument was of an unsupported type. -.It Bq Er ELF_E_ARGUMENT +specified an unsupported type. +.It Bq Er ELF_E_DATA +The +.Ar src +argument had a zero +.Va d_size +field. +.It Bq Er ELF_E_DATA The .Ar src argument specified a buffer size that was not an integral multiple of its underlying type. -.It Bq Er ELF_E_ARGUMENT +.It Bq Er ELF_E_DATA The .Ar dst argument specified a buffer size that was too small. -.It Bq Er ELF_E_ARGUMENT +.It Bq Er ELF_E_DATA Argument .Ar dst specified a destination buffer that overlaps with the source buffer. -.It Bq Er ELF_E_ARGUMENT +.It Bq Er ELF_E_DATA The destination buffer for a conversion to memory had an alignment inappropriate for the underlying ELF type. -.It Bq Er ELF_E_ARGUMENT +.It Bq Er ELF_E_DATA The source buffer for a conversion to file had an alignment inappropriate for the underlying ELF type. .It Bq Er ELF_E_UNIMPL ==== //depot/projects/dtrace/src/lib/libelf/libelf.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ #include __FBSDID("$FreeBSD$"); -#include +#include #include #include @@ -87,8 +87,10 @@ [ELF_T_SXWORD] = ALIGN64(Sxword), [ELF_T_SYMINFO] = UNSUPPORTED(), [ELF_T_SYM] = ALIGNMENT(Sym), +#if __FreeBSD_version >= 700009 [ELF_T_VDEF] = ALIGNMENT(Verdef), [ELF_T_VNEED] = ALIGNMENT(Verneed), +#endif [ELF_T_WORD] = ALIGNMENT(Word), [ELF_T_XWORD] = ALIGN64(Xword) }; ==== //depot/projects/dtrace/src/lib/libelf/libelf.h#6 (text+ko) ==== @@ -141,6 +141,7 @@ ELF_E_ARCHIVE, /* Malformed ar(1) archive */ ELF_E_ARGUMENT, /* Invalid argument */ ELF_E_CLASS, /* Mismatched ELF class */ + ELF_E_DATA, /* Invalid data buffer descriptor */ ELF_E_HEADER, /* Missing or malformed ELF header */ ELF_E_MMAP, /* File mapping failed */ ELF_E_MODE, /* Wrong mode for ELF descriptor */ ==== //depot/projects/dtrace/src/lib/libelf/libelf_allocate.c#2 (text+ko) ==== @@ -50,15 +50,17 @@ return NULL; } - e->e_kind = ELF_K_NONE; - e->e_class = ELFCLASSNONE; - e->e_cmd = ELF_C_NULL; - e->e_byteorder = ELFDATANONE; - e->e_parent = NULL; - e->e_rawfile = NULL; - e->e_rawsize = 0; - e->e_fd = -1; e->e_activations = 1; + e->e_byteorder = ELFDATANONE; + e->e_class = ELFCLASSNONE; + e->e_cmd = ELF_C_NULL; + e->e_fd = -1; + e->e_flags = 0; + e->e_kind = ELF_K_NONE; + e->e_parent = NULL; + e->e_rawfile = NULL; + e->e_rawsize = 0; + e->e_version = LIBELF_PRIVATE(version); (void) memset(&e->e_u, 0, sizeof(e->e_u)); ==== //depot/projects/dtrace/src/lib/libelf/libelf_convert.m4#8 (text+ko) ==== @@ -1,4 +1,4 @@ -//depot/projects/dtrace/src/lib/libelf/libelf_convert.m4#4 - edit change 103978 (text+ko) +//depot/user/jkoshy/projects/libbsdelf/src/libelf_convert.m4#10 - edit change 104937 (text+ko) /*- * Copyright (c) 2006 Joseph Koshy * All rights reserved. @@ -45,33 +45,33 @@ */ #define SWAP_HALF(X) do { \ - uint16_t _t = (uint16_t) (X); \ - (X) = \ - (_t & 0x00FF) << 8 | \ - (_t & 0xFF00) >> 8; \ + uint16_t _x = (uint16_t) (X); \ + uint16_t _t = _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + (X) = _t; \ } while (0) #define SWAP_WORD(X) do { \ - uint32_t _t = (uint32_t) (X); \ - (X) = \ - (_t & 0x000000FFUL) << 24 | \ - (_t & 0x0000FF00UL) << 8 | \ - (_t & 0x00FF0000UL) >> 8 | \ - (_t & 0xFF000000UL) >> 24; \ + uint32_t _x = (uint32_t) (X); \ + uint32_t _t = _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + (X) = _t; \ } while (0) #define SWAP_ADDR32(X) SWAP_WORD(X) #define SWAP_OFF32(X) SWAP_WORD(X) #define SWAP_SWORD(X) SWAP_WORD(X) #define SWAP_WORD64(X) do { \ - uint64_t _t = (uint64_t) (X); \ - (X) = \ - (_t & 0x00000000000000FFULL) << 56 | \ - (_t & 0x000000000000FF00ULL) << 40 | \ - (_t & 0x0000000000FF0000ULL) << 24 | \ - (_t & 0x00000000FF000000ULL) << 8 | \ - (_t & 0x000000FF00000000ULL) >> 8 | \ - (_t & 0x0000FF0000000000ULL) >> 24 | \ - (_t & 0x00FF000000000000ULL) >> 40 | \ - (_t & 0xFF00000000000000ULL) >> 56; \ + uint64_t _x = (uint64_t) (X); \ + uint64_t _t = _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + _t <<= 8; _x >>= 8; _t |= _x & 0xFF; \ + (X) = _t; \ } while (0) #define SWAP_ADDR64(X) SWAP_WORD64(X) #define SWAP_OFF64(X) SWAP_WORD64(X) @@ -205,9 +205,16 @@ * casting to work as expected. On the other hand the `file' * representation of an ELF data structure could be packed tighter * than its `in-memory' representation, and could be of a differing - * byte order. An additinal complication is that `ar' only pads data + * byte order. An additional complication is that `ar' only pads data * to even addresses and so ELF archive member data being read from * inside an `ar' archive could end up at misaligned memory addresses. + * + * Consequently, casting the `char *' pointers that point to memory + * representations (i.e., source pointers for the *_tof() functions + * and the destination pointers for the *_tom() functions), is safe, + * as these pointers should be correctly aligned for the memory type + * already. However, pointers to file representations have to be + * treated as being potentially unaligned and no casting can be done. */ include(SRCDIR`/elf_types.m4') @@ -226,6 +233,11 @@ IGNORE(NOTE) IGNORE(SYMINFO) +ifelse(eval(OSRELDATE < 700009),1, + `IGNORE(VDEF) + IGNORE(VNEED)', + `') + define(IGNORE_BYTE, 1) define(IGNORE_SXWORD32, 1) define(IGNORE_XWORD32, 1) @@ -250,24 +262,34 @@ define(`SIZEDEP_ADDR', 1) define(`SIZEDEP_OFF', 1) +/* + * `Primitive' ELF types are those that are an alias for an integral + * type. They have no internal structure. These can be copied using + * a `memcpy()', and byteswapped in straightforward way. + * + * Macro use: + * `$1': Name of the ELF type. + * `$2': C structure name suffix + * `$3': ELF class specifier for symbols, one of [`', `32', `64'] + * `$4': ELF class specifier for types, one of [`32', `64'] + */ define(`MAKEPRIM_TO_F',` static void libelf_cvt_$1$3_tof(char *dst, char *src, int count, int byteswap) { - Elf64_$2 t; + Elf$4_$2 t, *s = (Elf$4_$2 *) (uintptr_t) src; int c; if (dst == src && !byteswap) return; if (!byteswap) { - (void) memcpy(dst, src, count * sizeof(t)); + (void) memcpy(dst, src, count * sizeof(*s)); return; } for (c = 0; c < count; c++) { - memcpy(&t, src, sizeof(t)); - src += sizeof(t); + t = *s++; SWAP_$1$3(t); WRITE_$1$3(dst,t); } @@ -278,22 +300,21 @@ static void libelf_cvt_$1$3_tom(char *dst, char *src, int count, int byteswap) { - Elf64_$2 t; + Elf$4_$2 t, *d = (Elf$4_$2 *) (uintptr_t) dst; int c; if (dst == src && !byteswap) return; if (!byteswap) { - (void) memcpy(dst, src, count * sizeof(t)); + (void) memcpy(dst, src, count * sizeof(*d)); return; } for (c = 0; c < count; c++) { READ_$1$3(src,t); SWAP_$1$3(t); - memcpy(dst, &t, sizeof(t)); - dst += sizeof(t); + *d++ = t; } } ') @@ -362,6 +383,11 @@ * the source buffer is large enough to hold `file' data. When * converting from file to memory, we need to be careful to work * `backwards', to avoid overwriting unconverted data. + * + * Macro use: + * `$1': Name of the ELF type. + * `$2': C structure name suffix. + * `$3': ELF class specifier, one of [`', `32', `64'] */ define(`MAKE_TO_F', @@ -369,12 +395,12 @@ static void libelf_cvt$3_$1_tof(char *dst, char *src, int count, int byteswap) { - Elf$3_$2 t; + Elf$3_$2 t, *s; int c; + s = (Elf$3_$2 *) (uintptr_t) src; for (c = 0; c < count; c++) { - memcpy(&t, src, sizeof(t)); - src += sizeof(t); + t = *s++; if (byteswap) { SWAP_STRUCT($2,$3) } @@ -388,36 +414,48 @@ static void libelf_cvt$3_$1_tom(char *dst, char *src, int count, int byteswap) { - Elf$3_$2 t; - unsigned char *s; - int i; + Elf$3_$2 t, *d; + unsigned char *s,*s0; size_t fsz; fsz = elf$3_fsize(ELF_T_$1, 1, EV_CURRENT); + d = ((Elf$3_$2 *) (uintptr_t) dst) + (count - 1); + s0 = (unsigned char *) src + (count - 1) * fsz; - for (i = 0; i < count; i++) { - s = (unsigned char *) src; + while (count--) { + s = s0; READ_STRUCT($2,$3) if (byteswap) { SWAP_STRUCT($2,$3) } - memcpy(dst, &t, sizeof(t)); - dst += sizeof(t); - src += fsz; + *d-- = t; s0 -= fsz; } } ')') +/* + * Make type convertor functions from the type definition + * of the ELF type: + * - if the type is a base (i.e., `primitive') type: + * - if it is marked as to be ignored (i.e., `IGNORE_'TYPE) + * is defined, we skip the code generation step. + * - if the type is declared as `SIZEDEP', then 32 and 64 bit + * variants of the conversion functions are generated. + * - otherwise a 32 bit variant is generated. + * - if the type is a structure type, we generate 32 and 64 bit + * variants of the conversion functions. + */ + define(`MAKE_TYPE_CONVERTER', `ifdef(`BASE'_$1, `ifdef(`IGNORE_'$1,`', - `MAKEPRIM_TO_F($1,$2,`') - MAKEPRIM_TO_M($1,$2,`')')', + `MAKEPRIM_TO_F($1,$2,`',64) + MAKEPRIM_TO_M($1,$2,`',64)')', `ifdef(`SIZEDEP_'$1, - `MAKEPRIM_TO_F($1,$2,32)dnl - MAKEPRIM_TO_M($1,$2,32)dnl - MAKEPRIM_TO_F($1,$2,64)dnl - MAKEPRIM_TO_M($1,$2,64)', + `MAKEPRIM_TO_F($1,$2,32,32)dnl + MAKEPRIM_TO_M($1,$2,32,32)dnl + MAKEPRIM_TO_F($1,$2,64,64)dnl + MAKEPRIM_TO_M($1,$2,64,64)', `MAKE_TO_F($1,$2,32)dnl MAKE_TO_F($1,$2,64)dnl MAKE_TO_M($1,$2,32)dnl ==== //depot/projects/dtrace/src/lib/libelf/libelf_ehdr.c#5 (text+ko) ==== @@ -42,7 +42,7 @@ eh->e_ident[EI_MAG1] = ELFMAG1; \ eh->e_ident[EI_MAG2] = ELFMAG2; \ eh->e_ident[EI_MAG3] = ELFMAG3; \ - eh->e_ident[EI_CLASS] = LIBELF_PRIVATE(class); \ + eh->e_ident[EI_CLASS] = ELFCLASS##SZ; \ eh->e_ident[EI_DATA] = ELFDATANONE; \ eh->e_ident[EI_VERSION] = LIBELF_PRIVATE(version); \ eh->e_machine = EM_NONE; \ ==== //depot/projects/dtrace/src/lib/libelf/libelf_fsize.m4#2 (text+ko) ==== @@ -53,6 +53,10 @@ define(`XWORD_SIZE32', 0) define(`SXWORD_SIZE32', 0) +ifelse(eval(OSRELDATE < 700009),1, + `define(`VDEF_SIZE', 0) + define(`VNEED_SIZE', 0)',`') + /* * FSZ{32,64} define the sizes of 32 and 64 bit file structures respectively. */ ==== //depot/projects/dtrace/src/lib/libelf/libelf_msize.m4#2 (text+ko) ==== @@ -60,6 +60,10 @@ define(SXWORD_SIZE32, 0) define(XWORD_SIZE32, 0) +ifelse(eval(OSRELDATE < 700009),1, + `define(`VDEF_SIZE', 0) + define(`VNEED_SIZE', 0)',`') + define(`DEFINE_ELF_MSIZE', `ifdef($1`_SIZE', `define($1_SIZE32,$1_SIZE) From owner-p4-projects@FreeBSD.ORG Thu Aug 24 21:04:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E478516A4E0; Thu, 24 Aug 2006 21:04:23 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A75A316A4DD for ; Thu, 24 Aug 2006 21:04:23 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 55FDC43D53 for ; Thu, 24 Aug 2006 21:04:23 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OL4NLf043337 for ; Thu, 24 Aug 2006 21:04:23 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OL4NsW043332 for perforce@freebsd.org; Thu, 24 Aug 2006 21:04:23 GMT (envelope-from imp@freebsd.org) Date: Thu, 24 Aug 2006 21:04:23 GMT Message-Id: <200608242104.k7OL4NsW043332@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104987 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 21:04:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=104987 Change 104987 by imp@imp_bugs on 2006/08/24 21:03:56 We now make it through installing the includes before we die now... Affected files ... .. //depot/projects/arm/src/Makefile#3 edit .. //depot/projects/arm/src/Makefile.inc1#6 edit Differences ... ==== //depot/projects/arm/src/Makefile#3 (text+ko) ==== @@ -79,7 +79,7 @@ obj objlink regress rerelease showconfig tags toolchain update \ _worldtmp _legacy _bootstrap-tools _cleanobj _obj \ _build-tools _cross-tools _includes _libraries _depend \ - build32 distribute32 install32 cross-devel cross-devel-install + build32 distribute32 install32 cross-build cross-devel cross-devel-install TGTS+= ${SUBDIR_TARGETS} BITGTS= files includes ==== //depot/projects/arm/src/Makefile.inc1#6 (text+ko) ==== @@ -1208,14 +1208,27 @@ NOFUN=-DNO_FSCHG -DWITHOUT_HTML -DWITHOUT_INFO -DNO_LINT \ -DWITHOUT_MAN -DWITHOUT_NLS -DWITHOUT_PROFILE -CDENV=MAKEOBJDIRPREFIX=${MAKEOBJDIRPREFIX}/${XDEV} \ - TOOLS_PREFIX=/usr/${XDEV_ARCH} TARGET=${XDEV} \ - TARGET_ARCH=${XDEV_ARCH} \ +XDDIR=${XDEV}-${XDEV_ARCH} +XDTP=/usr/${XDDIR} +CDBENV=MAKEOBJDIRPREFIX=${MAKEOBJDIRPREFIX}/${XDDIR} \ + TARGET=${XDEV} \ + TARGET_ARCH=${XDEV_ARCH} +CDENV= ${CDBENV} \ + TOOLS_PREFIX=${XDTP} \ MACHINE=${XDEV} \ MACHINE_ARCH=${XDEV_ARCH} +CDTMP= ${MAKEOBJDIRPREFIX}/${XDEV}/${.CURDIR}/tmp CDMAKE=${CDENV} ${MAKE} ${NOFUN} -CD2MAKE=${CDENV} PATH=/usr/${XDEV}/usr/bin:${PATH} ${MAKE} ${NOFUN} +CD2MAKE=${CDENV} PATH=${CDTMP}/usr/bin:${XDTP}/usr/bin:${PATH} ${MAKE} ${NOFUN} +XDDESTDIR=${DESTDIR}${XDTP} + +.ORDER: cross-build cross-devel cross-devel-install +xdev: cross-build cross-devel cross-devel-install + +cross-build: + ${_+_}cd ${.CURDIR}; \ + ${CDBENV} ${MAKE} -f Makefile.inc1 build-tools cross-devel: .for _tool in \ @@ -1228,15 +1241,17 @@ ${CDMAKE} DIRPRFX=${_tool}/ all .endfor + ${_+_}cd ${.CURDIR}; ${TMAKE} build-tools + _cdi-mtree: - ${_+_}@${ECHODIR} "mtree populating /usr/${XDEV}" - mkdir -p /usr/${XDEV} + ${_+_}@${ECHODIR} "mtree populating ${XDDESTDIR}" + mkdir -p ${XDDESTDIR} mtree -deU -f ${.CURDIR}/etc/mtree/BSD.root.dist \ - -p /usr/${XDEV} >/dev/null + -p ${XDDESTDIR} >/dev/null mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ - -p /usr/${XDEV}/usr >/dev/null + -p ${XDDESTDIR}/usr >/dev/null mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ - -p /usr/${XDEV}/usr/include >/dev/null + -p ${XDDESTDIR}/usr/include >/dev/null cross-devel-install: _cdi-mtree .for _tool in \ @@ -1244,7 +1259,9 @@ gnu/usr.bin/cc ${_+_}@${ECHODIR} "===> xdev ${_tool} (install)"; \ cd ${.CURDIR}/${_tool}; \ - ${CDMAKE} DIRPRFX=${_tool}/ install DESTDIR=${DESTDIR}/usr/${XDEV} + ${CDMAKE} DIRPRFX=${_tool}/ install DESTDIR=${XDDESTDIR} .endfor - ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 par-includes DESTDIR=${DESTDIR}/usr/${XDEV} - ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 libraries DESTDIR=${DESTDIR}/usr/${XDEV} + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 par-includes DESTDIR=${XDDESTDIR} + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 libraries DESTDIR=${XDDESTDIR} + +.endif From owner-p4-projects@FreeBSD.ORG Thu Aug 24 21:42:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7AF3C16A4F0; Thu, 24 Aug 2006 21:42:38 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 55F9416A4DA for ; Thu, 24 Aug 2006 21:42:38 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 47D8543E8F for ; Thu, 24 Aug 2006 21:41:18 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OLf9NK045142 for ; Thu, 24 Aug 2006 21:41:09 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OLf9kT045139 for perforce@freebsd.org; Thu, 24 Aug 2006 21:41:09 GMT (envelope-from imp@freebsd.org) Date: Thu, 24 Aug 2006 21:41:09 GMT Message-Id: <200608242141.k7OLf9kT045139@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104989 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 21:42:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=104989 Change 104989 by imp@imp_bugs on 2006/08/24 21:40:37 Fix symblic link targets. We're able to complete the process now! Affected files ... .. //depot/projects/arm/src/Makefile.inc1#7 edit Differences ... ==== //depot/projects/arm/src/Makefile.inc1#7 (text+ko) ==== @@ -1214,6 +1214,7 @@ TARGET=${XDEV} \ TARGET_ARCH=${XDEV_ARCH} CDENV= ${CDBENV} \ + _SHLIBDIRPREFIX=${XDTP} \ TOOLS_PREFIX=${XDTP} \ MACHINE=${XDEV} \ MACHINE_ARCH=${XDEV_ARCH} From owner-p4-projects@FreeBSD.ORG Thu Aug 24 22:05:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A6F6016A4FE; Thu, 24 Aug 2006 22:05:17 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7917916A4F6 for ; Thu, 24 Aug 2006 22:05:17 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8B94743D6A for ; Thu, 24 Aug 2006 22:05:11 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7OM5Baw047619 for ; Thu, 24 Aug 2006 22:05:11 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7OM4g2P047601 for perforce@freebsd.org; Thu, 24 Aug 2006 22:04:42 GMT (envelope-from jb@freebsd.org) Date: Thu, 24 Aug 2006 22:04:42 GMT Message-Id: <200608242204.k7OM4g2P047601@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 104993 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 22:05:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=104993 Change 104993 by jb@jb_freebsd2 on 2006/08/24 22:04:30 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/committers-guide/article.sgml#7 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#22 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#17 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.develalumni.sgml#12 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/pr-guidelines/article.sgml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/disks/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/install/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/l10n/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/serialcomms/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#20 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/share/sgml/authors.ent#11 integrate .. //depot/projects/dtrace/doc/fr_FR.ISO8859-1/books/handbook/disks/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/share/mk/doc.common.mk#2 integrate .. //depot/projects/dtrace/doc/share/mk/doc.project.mk#3 integrate .. //depot/projects/dtrace/doc/share/mk/doc.xml.mk#3 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/danger.key#1 branch .. //depot/projects/dtrace/doc/share/pgpkeys/imp.key#2 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys-developers.sgml#12 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys.ent#11 integrate .. //depot/projects/dtrace/doc/share/sgml/freebsd.dsl#2 integrate .. //depot/projects/dtrace/doc/share/sgml/man-refs.ent#11 integrate .. //depot/projects/dtrace/doc/share/sgml/mirrors.xml#4 integrate .. //depot/projects/dtrace/ports/KNOBS#3 integrate .. //depot/projects/dtrace/ports/LEGAL#4 integrate .. //depot/projects/dtrace/ports/MOVED#13 integrate .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/processonelog#5 integrate .. //depot/projects/dtrace/ports/UPDATING#11 integrate .. //depot/projects/dtrace/src/Makefile.inc1#17 integrate .. //depot/projects/dtrace/src/ObsoleteFiles.inc#10 integrate .. //depot/projects/dtrace/src/UPDATING#6 integrate .. //depot/projects/dtrace/src/bin/date/netdate.c#3 integrate .. //depot/projects/dtrace/src/bin/df/df.c#3 integrate .. //depot/projects/dtrace/src/bin/ed/main.c#3 integrate .. //depot/projects/dtrace/src/bin/ps/ps.1#3 integrate .. //depot/projects/dtrace/src/contrib/gdb/FREEBSD-Xlist#3 integrate .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/powerpc/fbsd.mh#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/powerpc/fbsd.mt#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/powerpc/nm-fbsd.h#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/rs6000/nm-rs6000.h#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/rs6000/nm-rs6000ly.h#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/rs6000/rs6000.mh#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/rs6000/rs6000.mt#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/rs6000/rs6000lynx.mh#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/rs6000/rs6000lynx.mt#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/rs6000/tm-rs6000.h#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/rs6000/tm-rs6000ly.h#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/config/rs6000/xm-rs6000.h#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/ppcfbsd-nat.c#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/ppcfbsd-tdep.c#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/ppcfbsd-tdep.h#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/rs6000-nat.c#1 branch .. //depot/projects/dtrace/src/contrib/gdb/gdb/rs6000-tdep.c#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/BSD/Makefile#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/HISTORY#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/Makefile#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/bpf_filter.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ip_fil.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ipf.h#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/iplang/iplang_y.y#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ipmon.h#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ipsd/sbpf.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ipsend/ipsend.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ipsend/iptests.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ipsend/lsock.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ipsend/resend.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ipsend/sbpf.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ipsend/sock.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/ipt.h#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/lib/Makefile#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/lib/addicmp.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/lib/addkeep.c#3 delete .. //depot/projects/dtrace/src/contrib/ipfilter/lib/facpri.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/lib/getport.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/lib/icmpcode.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/lib/ipft_tx.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/lib/make_range.c#3 delete .. //depot/projects/dtrace/src/contrib/ipfilter/lib/optprint.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/lib/printfr.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/lib/printlog.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/man/ipmon.8#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/radix.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/samples/proxy.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/Makefile#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/f20#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/i1#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/i10#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/i11#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/i18#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/i5#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/i8#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/i9#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/in2#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/in5#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/ni19#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/ni20#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/expected/ni21#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/input/f2#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/input/f20#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/input/ni19#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/input/ni20#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/input/ni21#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/f20#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/i1#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/i10#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/i11#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/i15#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/i17#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/i18#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/i5#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/i8#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/i9#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/in2#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/in5#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/ni19.ipf#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/ni19.nat#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/ni20.ipf#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/ni20.nat#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/ni21.ipf#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/regress/ni21.nat#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/test/test.format#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/todo#1 branch .. //depot/projects/dtrace/src/contrib/ipfilter/tools/ipf.c#4 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/tools/ipf_y.y#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/tools/ipfcomp.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/tools/ipfs.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/tools/ipfstat.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/tools/ipftest.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/tools/ipmon.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/tools/ipnat_y.y#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/tools/ipsyncm.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/tools/ipsyncs.c#3 integrate .. //depot/projects/dtrace/src/contrib/ipfilter/tools/lexer.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/LICENSE#3 integrate .. //depot/projects/dtrace/src/contrib/less/Makefile.aut#3 integrate .. //depot/projects/dtrace/src/contrib/less/Makefile.in#3 integrate .. //depot/projects/dtrace/src/contrib/less/Makefile.wnb#3 integrate .. //depot/projects/dtrace/src/contrib/less/NEWS#3 integrate .. //depot/projects/dtrace/src/contrib/less/README#3 integrate .. //depot/projects/dtrace/src/contrib/less/brac.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/ch.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/charset.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/charset.h#1 branch .. //depot/projects/dtrace/src/contrib/less/cmd.h#3 integrate .. //depot/projects/dtrace/src/contrib/less/cmdbuf.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/command.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/configure#3 integrate .. //depot/projects/dtrace/src/contrib/less/configure.ac#3 integrate .. //depot/projects/dtrace/src/contrib/less/decode.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/defines.ds#3 integrate .. //depot/projects/dtrace/src/contrib/less/defines.h.in#3 integrate .. //depot/projects/dtrace/src/contrib/less/defines.o2#3 integrate .. //depot/projects/dtrace/src/contrib/less/defines.o9#3 integrate .. //depot/projects/dtrace/src/contrib/less/defines.wn#3 integrate .. //depot/projects/dtrace/src/contrib/less/edit.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/filename.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/forwback.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/funcs.h#3 integrate .. //depot/projects/dtrace/src/contrib/less/ifile.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/input.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/jump.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/less.h#3 integrate .. //depot/projects/dtrace/src/contrib/less/less.man#3 integrate .. //depot/projects/dtrace/src/contrib/less/less.nro#3 integrate .. //depot/projects/dtrace/src/contrib/less/lessecho.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/lessecho.man#1 branch .. //depot/projects/dtrace/src/contrib/less/lessecho.nro#1 branch .. //depot/projects/dtrace/src/contrib/less/lesskey.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/lesskey.h#3 integrate .. //depot/projects/dtrace/src/contrib/less/lesskey.man#3 integrate .. //depot/projects/dtrace/src/contrib/less/lesskey.nro#3 integrate .. //depot/projects/dtrace/src/contrib/less/lglob.h#3 integrate .. //depot/projects/dtrace/src/contrib/less/line.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/linenum.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/lsystem.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/main.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/mark.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/mkhelp.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/optfunc.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/option.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/option.h#3 integrate .. //depot/projects/dtrace/src/contrib/less/opttbl.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/os.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/output.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/pckeys.h#3 integrate .. //depot/projects/dtrace/src/contrib/less/position.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/position.h#3 integrate .. //depot/projects/dtrace/src/contrib/less/prompt.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/screen.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/scrsize.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/search.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/signal.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/tags.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/ttyin.c#3 integrate .. //depot/projects/dtrace/src/contrib/less/version.c#3 integrate .. //depot/projects/dtrace/src/contrib/pnpinfo/pnpinfo.c#3 integrate .. //depot/projects/dtrace/src/contrib/sendmail/FREEBSD-upgrade#4 integrate .. //depot/projects/dtrace/src/contrib/sendmail/RELEASE_NOTES#3 integrate .. //depot/projects/dtrace/src/contrib/sendmail/cf/cf/submit.cf#3 integrate .. //depot/projects/dtrace/src/contrib/sendmail/cf/m4/version.m4#3 integrate .. //depot/projects/dtrace/src/contrib/sendmail/contrib/cidrexpand#3 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/main.c#3 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/queue.c#3 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/srvrsmtp.c#3 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/version.c#3 integrate .. //depot/projects/dtrace/src/etc/defaults/rc.conf#14 integrate .. //depot/projects/dtrace/src/etc/network.subr#4 integrate .. //depot/projects/dtrace/src/etc/pccard_ether#3 integrate .. //depot/projects/dtrace/src/etc/rc.d/Makefile#6 integrate .. //depot/projects/dtrace/src/etc/rc.d/dhclient#4 integrate .. //depot/projects/dtrace/src/etc/rc.d/ramdisk#3 delete .. //depot/projects/dtrace/src/etc/rc.d/ramdisk-own#3 delete .. //depot/projects/dtrace/src/etc/rc.d/sshd#4 integrate .. //depot/projects/dtrace/src/etc/rc.d/ypxfrd#3 integrate .. //depot/projects/dtrace/src/etc/rc.initdiskless#3 integrate .. //depot/projects/dtrace/src/etc/rc.subr#8 integrate .. //depot/projects/dtrace/src/etc/sendmail/freebsd.mc#4 integrate .. //depot/projects/dtrace/src/etc/sendmail/freebsd.submit.mc#4 integrate .. //depot/projects/dtrace/src/gnu/lib/libsupc++/Makefile#3 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/Makefile#3 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/binutils/libbfd/Makefile.powerpc#3 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/Makefile#3 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/arch/alpha/Makefile#3 delete .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/arch/alpha/config.h#3 delete .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/arch/alpha/init.c#3 delete .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/arch/powerpc/Makefile#1 branch .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/arch/powerpc/config.h#1 branch .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/arch/powerpc/init.c#1 branch .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/trgt_alpha.c#3 delete .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#3 integrate .. //depot/projects/dtrace/src/lib/Makefile#7 integrate .. //depot/projects/dtrace/src/lib/csu/alpha/Makefile#3 delete .. //depot/projects/dtrace/src/lib/csu/alpha/crt1.c#3 delete .. //depot/projects/dtrace/src/lib/csu/alpha/crti.S#3 delete .. //depot/projects/dtrace/src/lib/csu/alpha/crtn.S#3 delete .. //depot/projects/dtrace/src/lib/libc/Makefile#7 integrate .. //depot/projects/dtrace/src/lib/libc/alpha/Makefile.inc#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/SYS.h#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/Symbol.map#2 delete .. //depot/projects/dtrace/src/lib/libc/alpha/_fpmath.h#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/arith.h#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/Makefile.inc#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/_ctx_start.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/_set_tp.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/_setjmp.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/divrem.m4#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/fabs.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/flt_rounds.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/fpgetmask.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/fpgetround.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/fpgetsticky.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/fpsetmask.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/fpsetround.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/infinity.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/makecontext.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/modf.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/rfork_thread.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/setjmp.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/signalcontext.c#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/gen/sigsetjmp.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/net/Makefile.inc#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/net/byte_swap_2.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/net/byte_swap_4.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/net/htonl.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/net/htons.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/net/ntohl.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/net/ntohs.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/stdlib/Makefile.inc#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/string/Makefile.inc#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/string/bcopy.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/string/bzero.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/string/ffs.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/string/memcpy.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/string/memmove.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/Makefile.inc#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/Ovfork.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/brk.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/cerror.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/exect.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/fork.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/pipe.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/ptrace.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/sbrk.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/setlogin.S#3 delete .. //depot/projects/dtrace/src/lib/libc/alpha/sys/sigreturn.S#3 delete .. //depot/projects/dtrace/src/lib/libc/arm/net/htonl.S#3 integrate .. //depot/projects/dtrace/src/lib/libc/arm/net/htons.S#3 integrate .. //depot/projects/dtrace/src/lib/libc/arm/net/ntohl.S#3 integrate .. //depot/projects/dtrace/src/lib/libc/arm/net/ntohs.S#3 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/findfp.c#3 integrate .. //depot/projects/dtrace/src/lib/libc/sys/connect.2#3 integrate .. //depot/projects/dtrace/src/lib/libc/sys/getfsstat.2#3 integrate .. //depot/projects/dtrace/src/lib/libc_r/Makefile#5 integrate .. //depot/projects/dtrace/src/lib/libc_r/arch/alpha/_atomic_lock.S#3 delete .. //depot/projects/dtrace/src/lib/libdisk/write_alpha_disk.c#3 delete .. //depot/projects/dtrace/src/lib/libio/Makefile#3 delete .. //depot/projects/dtrace/src/lib/libio/alpha_sethae.c#3 delete .. //depot/projects/dtrace/src/lib/libio/bwx.c#3 delete .. //depot/projects/dtrace/src/lib/libio/io.c#3 delete .. //depot/projects/dtrace/src/lib/libio/io.h#3 delete .. //depot/projects/dtrace/src/lib/libio/swiz.c#3 delete .. //depot/projects/dtrace/src/lib/libkvm/kvm_alpha.c#3 delete .. //depot/projects/dtrace/src/lib/libpthread/Makefile#4 integrate .. //depot/projects/dtrace/src/lib/libpthread/arch/alpha/Makefile.inc#3 delete .. //depot/projects/dtrace/src/lib/libpthread/arch/alpha/alpha/context.S#3 delete .. //depot/projects/dtrace/src/lib/libpthread/arch/alpha/alpha/enter_uts.S#3 delete .. //depot/projects/dtrace/src/lib/libpthread/arch/alpha/alpha/pthread_md.c#3 delete .. //depot/projects/dtrace/src/lib/libpthread/arch/alpha/include/atomic_ops.h#3 delete .. //depot/projects/dtrace/src/lib/libpthread/arch/alpha/include/pthread_md.h#3 delete .. //depot/projects/dtrace/src/lib/libstand/Makefile#3 integrate .. //depot/projects/dtrace/src/lib/libstand/alpha/_setjmp.S#3 delete .. //depot/projects/dtrace/src/lib/libthr/Makefile#6 integrate .. //depot/projects/dtrace/src/lib/libthr/arch/alpha/Makefile.inc#3 delete .. //depot/projects/dtrace/src/lib/libthr/arch/alpha/alpha/pthread_md.c#3 delete .. //depot/projects/dtrace/src/lib/libthr/arch/alpha/include/pthread_md.h#3 delete .. //depot/projects/dtrace/src/lib/libthread_db/arch/alpha/libc_r_md.c#3 delete .. //depot/projects/dtrace/src/lib/libthread_db/arch/alpha/libpthread_md.c#3 delete .. //depot/projects/dtrace/src/lib/libutil/login.conf.5#4 integrate .. //depot/projects/dtrace/src/lib/msun/alpha/Makefile.inc#3 delete .. //depot/projects/dtrace/src/lib/msun/alpha/Symbol.map#2 delete .. //depot/projects/dtrace/src/lib/msun/alpha/fenv.c#3 delete .. //depot/projects/dtrace/src/lib/msun/alpha/fenv.h#3 delete .. //depot/projects/dtrace/src/lib/msun/alpha/s_copysign.S#3 delete .. //depot/projects/dtrace/src/lib/msun/alpha/s_copysignf.S#3 delete .. //depot/projects/dtrace/src/libexec/rtld-elf/alpha/Makefile.inc#3 delete .. //depot/projects/dtrace/src/libexec/rtld-elf/alpha/ld.so.script#3 delete .. //depot/projects/dtrace/src/libexec/rtld-elf/alpha/reloc.c#3 delete .. //depot/projects/dtrace/src/libexec/rtld-elf/alpha/rtld_machdep.h#3 delete .. //depot/projects/dtrace/src/libexec/rtld-elf/alpha/rtld_start.S#3 delete .. //depot/projects/dtrace/src/release/Makefile#5 integrate .. //depot/projects/dtrace/src/release/alpha/boot_crunch.conf#3 delete .. //depot/projects/dtrace/src/release/alpha/mkisoimages.sh#3 delete .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#16 integrate .. //depot/projects/dtrace/src/rescue/rescue/Makefile#4 integrate .. //depot/projects/dtrace/src/sbin/bsdlabel/Makefile#3 integrate .. //depot/projects/dtrace/src/sbin/camcontrol/camcontrol.8#3 integrate .. //depot/projects/dtrace/src/sbin/camcontrol/camcontrol.c#3 integrate .. //depot/projects/dtrace/src/sbin/dhclient/dhclient.8#3 integrate .. //depot/projects/dtrace/src/sbin/dhclient/dhclient.c#5 integrate .. //depot/projects/dtrace/src/sbin/dump/dump.8#3 integrate .. //depot/projects/dtrace/src/sbin/dump/main.c#3 integrate .. //depot/projects/dtrace/src/sbin/fsdb/fsdb.8#3 integrate .. //depot/projects/dtrace/src/sbin/fsdb/fsdb.c#4 integrate .. //depot/projects/dtrace/src/sbin/fsdb/fsdbutil.c#4 integrate .. //depot/projects/dtrace/src/sbin/ggate/Makefile#4 integrate .. //depot/projects/dtrace/src/sbin/ifconfig/ifmedia.c#3 integrate .. //depot/projects/dtrace/src/sbin/ipf/libipf/Makefile#3 integrate .. //depot/projects/dtrace/src/sbin/ipfw/ipfw.8#6 integrate .. //depot/projects/dtrace/src/sbin/ipfw/ipfw2.c#7 integrate .. //depot/projects/dtrace/src/sbin/ping/Makefile#3 integrate .. //depot/projects/dtrace/src/sbin/sysctl/sysctl.c#6 integrate .. //depot/projects/dtrace/src/secure/lib/libcrypto/Makefile.inc#5 integrate .. //depot/projects/dtrace/src/secure/lib/libcrypto/opensslconf-alpha.h#3 delete .. //depot/projects/dtrace/src/share/examples/drivers/make_pseudo_driver.sh#4 integrate .. //depot/projects/dtrace/src/share/man/man4/amdsmb.4#3 integrate .. //depot/projects/dtrace/src/share/man/man4/ata.4#4 integrate .. //depot/projects/dtrace/src/share/man/man4/fast_ipsec.4#3 integrate .. //depot/projects/dtrace/src/share/man/man4/ipsec.4#3 integrate .. //depot/projects/dtrace/src/share/man/man4/ixgb.4#3 integrate .. //depot/projects/dtrace/src/share/man/man4/nfsmb.4#3 integrate .. //depot/projects/dtrace/src/share/man/man4/uplcom.4#3 integrate .. //depot/projects/dtrace/src/share/man/man5/rc.conf.5#10 integrate .. //depot/projects/dtrace/src/share/man/man8/rc.subr.8#5 integrate .. //depot/projects/dtrace/src/share/man/man9/lock.9#3 integrate .. //depot/projects/dtrace/src/share/mk/bsd.cpu.mk#5 integrate .. //depot/projects/dtrace/src/share/mk/bsd.endian.mk#3 integrate .. //depot/projects/dtrace/src/share/mk/bsd.port.mk#3 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/support.S#3 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux.h#3 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_dummy.c#4 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_sysvec.c#5 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/syscalls.conf#3 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/dtrace/src/sys/arm/arm/elf_trampoline.c#4 integrate .. //depot/projects/dtrace/src/sys/arm/arm/mem.c#4 integrate .. //depot/projects/dtrace/src/sys/boot/arm/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/boot0/Makefile#4 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/boot0iic/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/boot0iic/doit.c#2 delete .. //depot/projects/dtrace/src/sys/boot/arm/at91/boot0iic/main.c#2 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/boot0spi/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/boot0spi/doit.c#2 delete .. //depot/projects/dtrace/src/sys/boot/arm/at91/boot0spi/main.c#2 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/bootiic/loader_prompt.c#2 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/bootspi/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/bootspi/arm_init.S#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/bootspi/arm_init.s#2 delete .. //depot/projects/dtrace/src/sys/boot/arm/at91/bootspi/env_vars.c#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/bootspi/env_vars.h#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/bootspi/loader_prompt.c#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/bootspi/loader_prompt.h#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/bootspi/main.c#2 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/delay.c#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/emac.c#3 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/emac.h#3 integrate .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/emac_init.c#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/lib_AT91RM9200.h#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/mci_device.c#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/mci_device.h#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/reset.c#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/sd-card.c#1 branch .. //depot/projects/dtrace/src/sys/boot/arm/at91/libat91/sd-card.h#1 branch .. //depot/projects/dtrace/src/sys/boot/common/help.common#3 integrate .. //depot/projects/dtrace/src/sys/boot/common/loader.8#4 integrate .. //depot/projects/dtrace/src/sys/boot/ficl/arm/sysdep.c#1 branch .. //depot/projects/dtrace/src/sys/boot/ficl/arm/sysdep.h#1 branch .. //depot/projects/dtrace/src/sys/boot/forth/loader.conf#6 integrate .. //depot/projects/dtrace/src/sys/cam/scsi/scsi_all.c#3 integrate .. //depot/projects/dtrace/src/sys/cam/scsi/scsi_all.h#3 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32.h#3 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_misc.c#4 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_proto.h#4 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_syscall.h#4 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_syscalls.c#4 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_sysent.c#4 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/syscalls.conf#3 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/syscalls.master#5 integrate .. //depot/projects/dtrace/src/sys/compat/linux/linux_emul.c#1 branch .. //depot/projects/dtrace/src/sys/compat/linux/linux_emul.h#1 branch .. //depot/projects/dtrace/src/sys/compat/linux/linux_futex.c#1 branch .. //depot/projects/dtrace/src/sys/compat/linux/linux_futex.h#1 branch .. //depot/projects/dtrace/src/sys/compat/linux/linux_misc.c#5 integrate .. //depot/projects/dtrace/src/sys/compat/linux/linux_signal.c#4 integrate .. //depot/projects/dtrace/src/sys/compat/linux/linux_time.c#1 branch .. //depot/projects/dtrace/src/sys/compat/linux/linux_util.c#4 integrate .. //depot/projects/dtrace/src/sys/compat/ndis/ntoskrnl_var.h#3 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_proto.h#6 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_syscall.h#6 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_syscallnames.c#6 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_sysent.c#6 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/syscalls.conf#3 integrate .. //depot/projects/dtrace/src/sys/conf/NOTES#15 integrate .. //depot/projects/dtrace/src/sys/conf/files.amd64#8 integrate .. //depot/projects/dtrace/src/sys/conf/files.i386#12 integrate .. //depot/projects/dtrace/src/sys/conf/files.pc98#7 integrate .. //depot/projects/dtrace/src/sys/conf/options#18 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/fil.c#4 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_auth.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_auth.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_compat.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_fil.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_frag.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_log.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_nat.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_pptp_pxy.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_proxy.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_rcmd_pxy.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_scan.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_state.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_sync.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ip_sync.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/ipl.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ipfilter/netinet/mlfk_ipl.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/arl/if_arlreg.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-chipset.c#8 integrate .. //depot/projects/dtrace/src/sys/dev/ath/if_athvar.h#5 integrate .. //depot/projects/dtrace/src/sys/dev/bce/if_bce.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/bge/if_bge.c#10 integrate .. //depot/projects/dtrace/src/sys/dev/bge/if_bgereg.h#6 integrate .. //depot/projects/dtrace/src/sys/dev/iicbus/if_ic.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/iicbus/iicbb.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/ips/ips.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/isp/isp_ioctl.h#5 integrate .. //depot/projects/dtrace/src/sys/dev/isp/isp_pci.c#9 integrate .. //depot/projects/dtrace/src/sys/dev/mii/brgphy.c#7 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pci/ich.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/usb/usb_port.h#3 integrate .. //depot/projects/dtrace/src/sys/fs/msdosfs/denode.h#3 integrate .. //depot/projects/dtrace/src/sys/geom/vinum/geom_vinum_raid5.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/i386/support.s#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_isc_syscall.h#5 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_isc_sysent.c#5 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_proto.h#7 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_syscall.h#7 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_sysent.c#7 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_xenix.h#5 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_xenix_syscall.h#5 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_xenix_sysent.c#5 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/syscalls.conf#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/syscalls.isc.conf#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/syscalls.xenix.conf#3 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_dummy.c#4 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_proto.h#8 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_syscall.h#8 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_sysent.c#8 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_sysvec.c#5 integrate .. //depot/projects/dtrace/src/sys/i386/linux/syscalls.conf#3 integrate .. //depot/projects/dtrace/src/sys/i386/linux/syscalls.master#8 integrate .. //depot/projects/dtrace/src/sys/i386/xbox/xbox.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/init_sysent.c#10 integrate .. //depot/projects/dtrace/src/sys/kern/kern_exec.c#10 integrate .. //depot/projects/dtrace/src/sys/kern/kern_fork.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/kern_lock.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/kern_mutex.c#8 integrate .. //depot/projects/dtrace/src/sys/kern/kern_sx.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/kern_thr.c#9 integrate .. //depot/projects/dtrace/src/sys/kern/kern_time.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/makesyscalls.sh#6 integrate .. //depot/projects/dtrace/src/sys/kern/subr_turnstile.c#6 integrate .. //depot/projects/dtrace/src/sys/kern/sys_process.c#9 integrate .. //depot/projects/dtrace/src/sys/kern/syscalls.c#9 integrate .. //depot/projects/dtrace/src/sys/kern/syscalls.master#8 integrate .. //depot/projects/dtrace/src/sys/kern/systrace_args.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_sem.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_socket.c#10 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_aio.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_mount.c#8 integrate .. //depot/projects/dtrace/src/sys/modules/Makefile#15 integrate .. //depot/projects/dtrace/src/sys/modules/linprocfs/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/modules/linsysfs/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/modules/linux/Makefile#4 integrate .. //depot/projects/dtrace/src/sys/net/if_bridge.c#10 integrate .. //depot/projects/dtrace/src/sys/net/if_spppsubr.c#4 integrate .. //depot/projects/dtrace/src/sys/net/if_vlan.c#7 integrate .. //depot/projects/dtrace/src/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#5 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_fec.c#3 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_fastfwd.c#4 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_fw.h#4 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_fw2.c#8 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_input.c#5 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_output.c#5 integrate .. //depot/projects/dtrace/src/sys/netsmb/smb_crypt.c#3 integrate .. //depot/projects/dtrace/src/sys/netsmb/smb_iod.c#3 integrate .. //depot/projects/dtrace/src/sys/netsmb/smb_rq.c#3 integrate .. //depot/projects/dtrace/src/sys/netsmb/smb_rq.h#3 integrate .. //depot/projects/dtrace/src/sys/nfsclient/nfs_lock.c#3 integrate .. //depot/projects/dtrace/src/sys/pci/agp_amd64.c#3 integrate .. //depot/projects/dtrace/src/sys/pci/nfsmb.c#4 integrate .. //depot/projects/dtrace/src/sys/security/audit/audit_pipe.c#3 integrate .. //depot/projects/dtrace/src/sys/sys/dirent.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/eventhandler.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/imgact.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/lockmgr.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/sx.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/syscall.h#9 integrate .. //depot/projects/dtrace/src/sys/sys/syscall.mk#9 integrate .. //depot/projects/dtrace/src/sys/sys/sysctl.h#7 integrate .. //depot/projects/dtrace/src/sys/sys/sysent.h#7 integrate .. //depot/projects/dtrace/src/sys/sys/sysproto.h#9 integrate .. //depot/projects/dtrace/src/sys/ufs/ffs/ffs_snapshot.c#5 integrate .. //depot/projects/dtrace/src/sys/ufs/ufs/ufs_vnops.c#3 integrate .. //depot/projects/dtrace/src/sys/vm/vm_object.c#8 integrate .. //depot/projects/dtrace/src/sys/vm/vm_page.c#12 integrate .. //depot/projects/dtrace/src/sys/vm/vm_pageq.c#6 integrate .. //depot/projects/dtrace/src/sys/vm/vm_zeroidle.c#5 integrate .. //depot/projects/dtrace/src/tools/regression/lib/msun/Makefile#3 integrate .. //depot/projects/dtrace/src/tools/tools/nanobsd/nanobsd.sh#6 integrate .. //depot/projects/dtrace/src/usr.bin/Makefile#5 integrate .. //depot/projects/dtrace/src/usr.bin/calendar/calendars/calendar.freebsd#5 integrate .. //depot/projects/dtrace/src/usr.bin/calendar/calendars/calendar.history#3 integrate .. //depot/projects/dtrace/src/usr.bin/gprof/alpha.h#3 delete .. //depot/projects/dtrace/src/usr.bin/gprof/gprof.h#3 integrate .. //depot/projects/dtrace/src/usr.bin/less/defines.h#3 integrate .. //depot/projects/dtrace/src/usr.bin/lessecho/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.bin/locate/locate/locate.1#3 integrate .. //depot/projects/dtrace/src/usr.bin/pkill/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.bin/uac/Makefile#3 delete .. //depot/projects/dtrace/src/usr.bin/uac/uac.1#3 delete .. //depot/projects/dtrace/src/usr.bin/uac/uac.c#3 delete .. //depot/projects/dtrace/src/usr.bin/xlint/arch/alpha/targparam.h#3 delete .. //depot/projects/dtrace/src/usr.sbin/Makefile#9 integrate .. //depot/projects/dtrace/src/usr.sbin/arp/arp.8#3 integrate .. //depot/projects/dtrace/src/usr.sbin/crunch/crunchide/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/newsyslog/newsyslog.c#4 integrate .. //depot/projects/dtrace/src/usr.sbin/pnpinfo/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/rpc.lockd/kern.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/rpc.lockd/lockd.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/sysinstall/devices.c#4 integrate .. //depot/projects/dtrace/src/usr.sbin/sysinstall/install.c#4 integrate .. //depot/projects/dtrace/src/usr.sbin/traceroute/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/yppush/yppush_main.c#4 integrate .. //depot/projects/dtrace/www/de/about.sgml#2 integrate .. //depot/projects/dtrace/www/de/applications.sgml#2 integrate .. //depot/projects/dtrace/www/de/availability.sgml#2 integrate .. //depot/projects/dtrace/www/de/community.sgml#2 integrate .. //depot/projects/dtrace/www/de/community/irc.sgml#2 integrate .. //depot/projects/dtrace/www/de/community/mailinglists.sgml#2 integrate .. //depot/projects/dtrace/www/de/community/newsgroups.sgml#2 integrate .. //depot/projects/dtrace/www/de/community/webresources.sgml#3 integrate .. //depot/projects/dtrace/www/de/doc/Makefile#2 integrate .. //depot/projects/dtrace/www/de/docs.sgml#2 integrate .. //depot/projects/dtrace/www/de/docs/books.sgml#5 integrate .. //depot/projects/dtrace/www/de/docs/man.sgml#3 integrate .. //depot/projects/dtrace/www/de/docs/webresources.sgml#3 integrate .. //depot/projects/dtrace/www/de/features.sgml#2 integrate .. //depot/projects/dtrace/www/de/includes.navabout.sgml#3 delete .. //depot/projects/dtrace/www/de/includes.navcommunity.sgml#2 delete .. //depot/projects/dtrace/www/de/includes.navdevelopers.sgml#2 delete .. //depot/projects/dtrace/www/de/includes.navdocs.sgml#2 delete .. //depot/projects/dtrace/www/de/includes.navdownload.sgml#4 delete .. //depot/projects/dtrace/www/de/includes.navsupport.sgml#2 delete .. //depot/projects/dtrace/www/de/includes.sgml#7 delete .. //depot/projects/dtrace/www/de/includes.xsl#7 delete .. //depot/projects/dtrace/www/de/index.xsl#7 integrate .. //depot/projects/dtrace/www/de/internet.sgml#2 integrate .. //depot/projects/dtrace/www/de/mailto.sgml#2 integrate .. //depot/projects/dtrace/www/de/news/2002/Makefile#2 integrate .. //depot/projects/dtrace/www/de/news/Makefile#2 integrate .. //depot/projects/dtrace/www/de/news/includes.xsl#2 delete .. //depot/projects/dtrace/www/de/news/news-rdf.xsl#2 delete .. //depot/projects/dtrace/www/de/news/news.sgml#2 integrate .. //depot/projects/dtrace/www/de/news/news.xml#11 delete .. //depot/projects/dtrace/www/de/news/newsflash.xsl#2 delete .. //depot/projects/dtrace/www/de/news/oldnewsflash.xsl#2 delete .. //depot/projects/dtrace/www/de/news/press.xml#9 delete .. //depot/projects/dtrace/www/de/news/press.xsl#2 delete .. //depot/projects/dtrace/www/de/platforms/alpha.sgml#3 integrate .. //depot/projects/dtrace/www/de/platforms/amd64.sgml#3 integrate .. //depot/projects/dtrace/www/de/platforms/arm.sgml#3 integrate .. //depot/projects/dtrace/www/de/platforms/i386.sgml#3 integrate .. //depot/projects/dtrace/www/de/platforms/ia64.sgml#2 integrate .. //depot/projects/dtrace/www/de/platforms/ia64/Makefile#2 integrate .. //depot/projects/dtrace/www/de/platforms/ia64/includes.xsl#2 delete .. //depot/projects/dtrace/www/de/platforms/ia64/index.xsl#3 integrate .. //depot/projects/dtrace/www/de/platforms/ia64/machines.sgml#2 integrate .. //depot/projects/dtrace/www/de/platforms/ia64/refs.sgml#3 integrate .. //depot/projects/dtrace/www/de/platforms/ia64/todo.xsl#3 integrate .. //depot/projects/dtrace/www/de/platforms/index.sgml#2 integrate .. //depot/projects/dtrace/www/de/platforms/mips.sgml#2 integrate .. //depot/projects/dtrace/www/de/platforms/pc98.sgml#3 integrate .. //depot/projects/dtrace/www/de/platforms/ppc.sgml#2 integrate .. //depot/projects/dtrace/www/de/platforms/sparc.sgml#2 integrate .. //depot/projects/dtrace/www/de/platforms/x86-64.sgml#2 integrate .. //depot/projects/dtrace/www/de/projects/Makefile#2 integrate .. //depot/projects/dtrace/www/de/projects/newbies.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.11R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.11R/hardware.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.11R/installation.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.11R/relnotes.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.6.2R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.6.2R/hardware.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.6.2R/relnotes.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.7R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.7R/hardware.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.7R/installation.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.7R/relnotes.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.8R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.8R/hardware.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.8R/installation.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.8R/relnotes.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.9R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.9R/hardware.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.9R/installation.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/4.9R/relnotes.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.0R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.0R/hardware.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.0R/installation.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.0R/relnotes.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.1R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.1R/hardware.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.1R/installation.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.1R/relnotes.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.2R/hardware.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.2R/installation.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.2R/relnotes.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.3R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.3R/hardware.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.3R/installation.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/5.3R/relnotes.sgml#2 integrate .. //depot/projects/dtrace/www/de/releases/index.sgml#4 integrate .. //depot/projects/dtrace/www/de/releases/snapshots.sgml#2 integrate .. //depot/projects/dtrace/www/de/relnotes.sgml#2 integrate .. //depot/projects/dtrace/www/de/security/Makefile#2 integrate .. //depot/projects/dtrace/www/de/security/charter.sgml#2 integrate .. //depot/projects/dtrace/www/de/security/mkindex.xsl#2 integrate .. //depot/projects/dtrace/www/de/security/security-rdf.xsl#2 delete .. //depot/projects/dtrace/www/de/security/security.sgml#5 integrate .. //depot/projects/dtrace/www/de/send-pr.sgml#2 integrate .. //depot/projects/dtrace/www/de/share/sgml/catalog#1 branch .. //depot/projects/dtrace/www/de/share/sgml/catalog.xml#1 branch .. //depot/projects/dtrace/www/de/share/sgml/header.l10n.ent#1 branch .. //depot/projects/dtrace/www/de/share/sgml/l10n.ent#1 branch .. //depot/projects/dtrace/www/de/share/sgml/libcommon.xsl#1 branch .. //depot/projects/dtrace/www/de/share/sgml/navibar.l10n.ent#1 branch .. //depot/projects/dtrace/www/de/share/sgml/news.xml#1 branch .. //depot/projects/dtrace/www/de/share/sgml/press.xml#1 branch .. //depot/projects/dtrace/www/de/support.sgml#2 integrate .. //depot/projects/dtrace/www/de/support/bugreports.sgml#2 integrate .. //depot/projects/dtrace/www/de/support/webresources.sgml#3 integrate .. //depot/projects/dtrace/www/de/where.sgml#4 integrate .. //depot/projects/dtrace/www/en/about.sgml#3 integrate .. //depot/projects/dtrace/www/en/advocacy/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/advocacy/letter.sgml#2 integrate .. //depot/projects/dtrace/www/en/advocacy/myths.sgml#4 integrate .. //depot/projects/dtrace/www/en/applications.sgml#2 integrate .. //depot/projects/dtrace/www/en/art.sgml#2 integrate .. //depot/projects/dtrace/www/en/availability.sgml#2 integrate .. //depot/projects/dtrace/www/en/cgi/pds.cgi#2 integrate .. //depot/projects/dtrace/www/en/cgi/ports.cgi#2 integrate .. //depot/projects/dtrace/www/en/commercial/Makefile#2 integrate .. //depot/projects/dtrace/www/en/commercial/commercial.sgml#2 integrate .. //depot/projects/dtrace/www/en/commercial/consult.xml#8 delete .. //depot/projects/dtrace/www/en/commercial/consult_bycat.xsl#2 delete .. //depot/projects/dtrace/www/en/commercial/entries.dtd#2 delete .. //depot/projects/dtrace/www/en/commercial/entries.xsl#2 delete .. //depot/projects/dtrace/www/en/commercial/hardware.xml#4 delete .. //depot/projects/dtrace/www/en/commercial/isp.xml#9 delete .. //depot/projects/dtrace/www/en/commercial/misc.xml#4 delete .. //depot/projects/dtrace/www/en/commercial/soft_bycat.xsl#2 delete .. //depot/projects/dtrace/www/en/commercial/software.xml#4 delete .. //depot/projects/dtrace/www/en/community.sgml#2 integrate .. //depot/projects/dtrace/www/en/community/irc.sgml#2 integrate .. //depot/projects/dtrace/www/en/community/mailinglists.sgml#3 integrate .. //depot/projects/dtrace/www/en/community/newsgroups.sgml#2 integrate .. //depot/projects/dtrace/www/en/community/webresources.sgml#3 integrate .. //depot/projects/dtrace/www/en/copyright/copyright.sgml#2 integrate .. //depot/projects/dtrace/www/en/copyright/daemon.sgml#2 integrate .. //depot/projects/dtrace/www/en/copyright/freebsd-doc-license.sgml#2 integrate .. //depot/projects/dtrace/www/en/copyright/freebsd-license.sgml#2 integrate .. //depot/projects/dtrace/www/en/copyright/license.sgml#2 integrate .. //depot/projects/dtrace/www/en/copyright/trademarks.sgml#5 integrate .. //depot/projects/dtrace/www/en/developers.sgml#8 integrate .. //depot/projects/dtrace/www/en/developers/cvs.sgml#2 integrate .. //depot/projects/dtrace/www/en/docproj/current.sgml#3 integrate .. //depot/projects/dtrace/www/en/docproj/doc-set.sgml#2 integrate .. //depot/projects/dtrace/www/en/docproj/docproj.sgml#2 integrate .. //depot/projects/dtrace/www/en/docproj/handbook.sgml#2 integrate .. //depot/projects/dtrace/www/en/docproj/handbook3.sgml#2 integrate .. //depot/projects/dtrace/www/en/docproj/sgml.sgml#2 integrate .. //depot/projects/dtrace/www/en/docproj/submitting.sgml#2 integrate .. //depot/projects/dtrace/www/en/docproj/todo.sgml#7 integrate .. //depot/projects/dtrace/www/en/docproj/translations.sgml#3 integrate .. //depot/projects/dtrace/www/en/docproj/who.sgml#2 integrate .. //depot/projects/dtrace/www/en/docs.sgml#2 integrate .. //depot/projects/dtrace/www/en/docs/books.sgml#4 integrate .. //depot/projects/dtrace/www/en/docs/man.sgml#3 integrate .. //depot/projects/dtrace/www/en/docs/webresources.sgml#3 integrate .. //depot/projects/dtrace/www/en/donations/donors.sgml#10 integrate .. //depot/projects/dtrace/www/en/donations/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/donations/wantlist.sgml#10 integrate .. //depot/projects/dtrace/www/en/events/2002/bsdcon-devsummit.sgml#2 integrate .. //depot/projects/dtrace/www/en/events/2002/usenix-devsummit.sgml#2 integrate .. //depot/projects/dtrace/www/en/events/2003/bsdcon-devsummit.sgml#2 integrate .. //depot/projects/dtrace/www/en/events/Makefile#2 integrate .. //depot/projects/dtrace/www/en/events/events.dtd#2 delete .. //depot/projects/dtrace/www/en/events/events.xml#7 delete .. //depot/projects/dtrace/www/en/events/events.xsl#2 delete .. //depot/projects/dtrace/www/en/events/includes.xsl#2 delete .. //depot/projects/dtrace/www/en/features.sgml#2 integrate .. //depot/projects/dtrace/www/en/gnome/Makefile#3 integrate .. //depot/projects/dtrace/www/en/gnome/contact.sgml#2 integrate .. //depot/projects/dtrace/www/en/gnome/docs/Makefile#3 integrate .. //depot/projects/dtrace/www/en/gnome/docs/bugging.sgml#2 integrate .. //depot/projects/dtrace/www/en/gnome/docs/develfaq.sgml#2 integrate .. //depot/projects/dtrace/www/en/gnome/docs/example-Makefile.sgml#4 integrate .. //depot/projects/dtrace/www/en/gnome/docs/faq2.sgml#5 integrate .. //depot/projects/dtrace/www/en/gnome/docs/faq210.sgml#2 integrate .. //depot/projects/dtrace/www/en/gnome/docs/faq212.sgml#2 integrate .. //depot/projects/dtrace/www/en/gnome/docs/faq214.sgml#4 integrate .. //depot/projects/dtrace/www/en/gnome/docs/faq28.sgml#2 integrate .. //depot/projects/dtrace/www/en/gnome/docs/gnome1_porting.sgml#3 integrate .. //depot/projects/dtrace/www/en/gnome/docs/gnome2_porting.sgml#4 integrate .. //depot/projects/dtrace/www/en/gnome/docs/gnome_porting.sgml#5 integrate .. //depot/projects/dtrace/www/en/gnome/docs/porting.sgml#3 integrate .. //depot/projects/dtrace/www/en/gnome/docs/volunteer.sgml#3 integrate .. //depot/projects/dtrace/www/en/gnome/includes.navgnome.sgml#4 delete .. //depot/projects/dtrace/www/en/gnome/includes.navgnome.xsl#3 delete .. //depot/projects/dtrace/www/en/gnome/includes.sgml#3 delete .. //depot/projects/dtrace/www/en/gnome/includes.xsl#3 delete .. //depot/projects/dtrace/www/en/gnome/index.xsl#4 integrate .. //depot/projects/dtrace/www/en/gnome/news.xml#8 integrate .. //depot/projects/dtrace/www/en/gnome/newsflash.xsl#2 integrate .. //depot/projects/dtrace/www/en/gnome/rss.xsl#2 integrate .. //depot/projects/dtrace/www/en/gnome/screenshots.sgml#3 integrate .. //depot/projects/dtrace/www/en/includes.navabout.sgml#2 delete .. //depot/projects/dtrace/www/en/includes.navcommunity.sgml#2 delete .. //depot/projects/dtrace/www/en/includes.navdevelopers.sgml#2 delete .. //depot/projects/dtrace/www/en/includes.navdocs.sgml#2 delete .. //depot/projects/dtrace/www/en/includes.navdownload.sgml#2 delete .. //depot/projects/dtrace/www/en/includes.navports.sgml#2 delete .. //depot/projects/dtrace/www/en/includes.navsupport.sgml#2 delete .. //depot/projects/dtrace/www/en/includes.sgml#2 delete .. //depot/projects/dtrace/www/en/includes.xsl#2 delete .. //depot/projects/dtrace/www/en/index.xsl#6 integrate .. //depot/projects/dtrace/www/en/internal/about.sgml#3 integrate .. //depot/projects/dtrace/www/en/internal/bylaws.sgml#4 integrate .. //depot/projects/dtrace/www/en/internal/core-vote.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/developer.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/doceng.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/expire-bits.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/fortunes.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/homepage.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/internal.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/machines.sgml#5 integrate .. //depot/projects/dtrace/www/en/internal/mirror.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/new-account.sgml#3 integrate .. //depot/projects/dtrace/www/en/internal/photos.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/policies.sgml#3 integrate .. //depot/projects/dtrace/www/en/internal/releng.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/rtp.sgml#2 integrate .. //depot/projects/dtrace/www/en/internal/statistic.sgml#2 integrate .. //depot/projects/dtrace/www/en/internet.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/advocacy.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/dists/10.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/dists/11.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/dists/12.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/dists/13.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/dists/14.sgml#3 integrate .. //depot/projects/dtrace/www/en/java/dists/15.sgml#3 integrate .. //depot/projects/dtrace/www/en/java/dists/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/docs/faq.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/docs/howtoports.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/docs/newbies.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/docs/performance.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/docs/tutorials.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/howhelp.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/index.sgml#3 integrate .. //depot/projects/dtrace/www/en/java/install.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/links/api.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/links/development.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/links/documentation.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/links/freebsd.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/links/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/links/resources.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/links/servlets.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/links/tools.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/links/tutorials.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/links/vendor.sgml#2 integrate .. //depot/projects/dtrace/www/en/java/newsflash.sgml#3 integrate .. //depot/projects/dtrace/www/en/kse/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/logo.sgml#4 integrate .. //depot/projects/dtrace/www/en/mailto.sgml#2 integrate .. //depot/projects/dtrace/www/en/marketing/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/marketing/os-comparison.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/1993/freebsd-coined.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/1996/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/1997/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/1998/Makefile#2 integrate .. //depot/projects/dtrace/www/en/news/1998/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/1999/Makefile#2 integrate .. //depot/projects/dtrace/www/en/news/1999/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/2000/Makefile#2 integrate .. //depot/projects/dtrace/www/en/news/2000/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/2001/Makefile#2 integrate .. //depot/projects/dtrace/www/en/news/2001/news.xml#2 integrate .. //depot/projects/dtrace/www/en/news/2002/Makefile#2 integrate .. //depot/projects/dtrace/www/en/news/2002/news.xml#2 integrate .. //depot/projects/dtrace/www/en/news/2003/Makefile#2 integrate .. //depot/projects/dtrace/www/en/news/2003/news.xml#2 integrate .. //depot/projects/dtrace/www/en/news/Makefile#2 integrate .. //depot/projects/dtrace/www/en/news/includes.sgml#2 delete .. //depot/projects/dtrace/www/en/news/includes.xsl#2 delete .. //depot/projects/dtrace/www/en/news/news-rdf.xsl#2 delete .. //depot/projects/dtrace/www/en/news/news.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/news.xml#17 delete .. //depot/projects/dtrace/www/en/news/newsflash.xsl#2 delete .. //depot/projects/dtrace/www/en/news/oldnewsflash.xsl#2 delete .. //depot/projects/dtrace/www/en/news/oldpress.xsl#2 delete .. //depot/projects/dtrace/www/en/news/press-rel-1.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/press-rel-2.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/press-rel-3.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/press-rel-4.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/press-rel-5.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/press-rel-6.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/press-rel-7.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/press-rel-8.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/press-rel-9.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/press.xml#11 delete .. //depot/projects/dtrace/www/en/news/press.xsl#2 delete .. //depot/projects/dtrace/www/en/news/pressreleases.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/sou1999.sgml#2 integrate .. //depot/projects/dtrace/www/en/news/status/Makefile#4 integrate .. //depot/projects/dtrace/www/en/news/status/includes.xsl#2 delete .. //depot/projects/dtrace/www/en/news/status/report-apr-2006-jun-2006.xml#3 integrate .. //depot/projects/dtrace/www/en/news/status/report-august-2001.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-dec-2001-jan-2002.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-feb-2002-apr-2002.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-jan-2003-feb-2003.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-jan-2004-feb-2004.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-jan-2005-mar-2005.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-jan-2006-mar-2006.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-july-2001.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-july-2002-aug-2002.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-july-2004-dec-2004.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-july-2005-oct-2005.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-june-2001.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-mar-2003-sep-2003.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-mar-2004-apr-2004.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-mar-2005-june-2005.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-may-2002-june-2002.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-may-2004-june-2004.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-nov-2002-dec-2002.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-november-2001.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-oct-2003-dec-2003.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-oct-2005-dec-2005.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-sept-2002-oct-2002.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report-september-2001.xml#2 integrate .. //depot/projects/dtrace/www/en/news/status/report.xsl#2 integrate .. //depot/projects/dtrace/www/en/news/status/status.sgml#4 integrate .. //depot/projects/dtrace/www/en/platforms/alpha.sgml#3 integrate .. //depot/projects/dtrace/www/en/platforms/amd64.sgml#2 integrate .. //depot/projects/dtrace/www/en/platforms/amd64/motherboards.sgml#9 integrate .. //depot/projects/dtrace/www/en/platforms/arm.sgml#2 integrate .. //depot/projects/dtrace/www/en/platforms/i386.sgml#2 integrate .. //depot/projects/dtrace/www/en/platforms/ia64.sgml#2 integrate .. //depot/projects/dtrace/www/en/platforms/ia64/includes.xsl#2 delete .. //depot/projects/dtrace/www/en/platforms/ia64/index.xsl#3 integrate .. //depot/projects/dtrace/www/en/platforms/ia64/machines.sgml#2 integrate .. //depot/projects/dtrace/www/en/platforms/ia64/news.xml#2 integrate .. //depot/projects/dtrace/www/en/platforms/ia64/refs.sgml#3 integrate .. //depot/projects/dtrace/www/en/platforms/ia64/todo.xsl#3 integrate .. //depot/projects/dtrace/www/en/platforms/index.sgml#3 integrate .. //depot/projects/dtrace/www/en/platforms/mips.sgml#2 integrate .. //depot/projects/dtrace/www/en/platforms/pc98.sgml#3 integrate .. //depot/projects/dtrace/www/en/platforms/ppc.sgml#2 integrate .. //depot/projects/dtrace/www/en/platforms/sparc.sgml#2 integrate .. //depot/projects/dtrace/www/en/platforms/x86-64.sgml#2 integrate .. //depot/projects/dtrace/www/en/platforms/xbox.sgml#3 integrate .. //depot/projects/dtrace/www/en/portmgr/charter.sgml#2 integrate .. //depot/projects/dtrace/www/en/portmgr/implementation.sgml#2 integrate .. //depot/projects/dtrace/www/en/portmgr/index.sgml#3 integrate .. //depot/projects/dtrace/www/en/portmgr/policies.sgml#3 integrate .. //depot/projects/dtrace/www/en/portmgr/policies_committing.sgml#2 integrate .. //depot/projects/dtrace/www/en/portmgr/policies_contributors.sgml#2 integrate .. //depot/projects/dtrace/www/en/portmgr/policies_releng_4.sgml#2 integrate .. //depot/projects/dtrace/www/en/portmgr/qa.sgml#2 integrate .. //depot/projects/dtrace/www/en/ports/Makefile#2 integrate .. //depot/projects/dtrace/www/en/ports/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/ports/installing.sgml#2 integrate .. //depot/projects/dtrace/www/en/ports/portindex#2 integrate .. //depot/projects/dtrace/www/en/ports/references.sgml#2 integrate .. //depot/projects/dtrace/www/en/ports/searching.sgml#2 integrate .. //depot/projects/dtrace/www/en/ports/updating.sgml#2 integrate .. //depot/projects/dtrace/www/en/projects/acpi/completed.sgml#3 integrate .. //depot/projects/dtrace/www/en/projects/acpi/index.sgml#4 integrate .. //depot/projects/dtrace/www/en/projects/bigdisk/index.sgml#3 integrate .. //depot/projects/dtrace/www/en/projects/busdma/index.sgml#6 integrate .. //depot/projects/dtrace/www/en/projects/c99/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/projects/cvsweb.sgml#2 integrate .. //depot/projects/dtrace/www/en/projects/dingo/index.sgml#3 integrate .. //depot/projects/dtrace/www/en/projects/ideas/index.sgml#13 integrate .. //depot/projects/dtrace/www/en/projects/mac/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/projects/mips/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/projects/netperf/cluster.sgml#3 integrate .. //depot/projects/dtrace/www/en/projects/netperf/index.sgml#3 integrate .. //depot/projects/dtrace/www/en/projects/newbies.sgml#2 integrate .. //depot/projects/dtrace/www/en/projects/projects.sgml#7 integrate .. //depot/projects/dtrace/www/en/projects/summerofcode-2005.sgml#4 integrate .. //depot/projects/dtrace/www/en/projects/summerofcode.sgml#10 integrate .. //depot/projects/dtrace/www/en/prstats/index.sgml#3 integrate .. //depot/projects/dtrace/www/en/publish.sgml#3 integrate .. //depot/projects/dtrace/www/en/releases/2.0.5R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.0.5R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.0/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.0/credits.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.0/install.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.0/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.1.5R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.1.5R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.1.6R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.1.6R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.1.6R/security.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.1.7R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.1.7R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.1R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.1R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.1R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.2R/errata.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.2R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.5R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.5R/errata.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.5R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.6R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.6R/errata.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.6R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.7R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.7R/errata.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.7R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.8R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.8R/errata.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2.8R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2R/install-media.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/2.2R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.0R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.0R/errata.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.0R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.1R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.1R/errata.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.1R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.2R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.2R/errata.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.2R/notes.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.3R/announce.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.3R/errata.sgml#2 integrate .. //depot/projects/dtrace/www/en/releases/3.3R/notes.sgml#2 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Aug 24 23:15:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 238FE16A4E1; Thu, 24 Aug 2006 23:15:43 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F291F16A4DD for ; Thu, 24 Aug 2006 23:15:42 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9FD5B43D45 for ; Thu, 24 Aug 2006 23:15:42 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7ONFgZW055053 for ; Thu, 24 Aug 2006 23:15:42 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7ONFgMH055050 for perforce@freebsd.org; Thu, 24 Aug 2006 23:15:42 GMT (envelope-from imp@freebsd.org) Date: Thu, 24 Aug 2006 23:15:42 GMT Message-Id: <200608242315.k7ONFgMH055050@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104997 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 23:15:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=104997 Change 104997 by imp@imp_bugs on 2006/08/24 23:15:23 Cleanup Affected files ... .. //depot/projects/arm/src/Makefile#4 edit .. //depot/projects/arm/src/Makefile.inc1#8 edit Differences ... ==== //depot/projects/arm/src/Makefile#4 (text+ko) ==== @@ -79,13 +79,15 @@ obj objlink regress rerelease showconfig tags toolchain update \ _worldtmp _legacy _bootstrap-tools _cleanobj _obj \ _build-tools _cross-tools _includes _libraries _depend \ - build32 distribute32 install32 cross-build cross-devel cross-devel-install + build32 distribute32 install32 TGTS+= ${SUBDIR_TARGETS} BITGTS= files includes BITGTS:=${BITGTS} ${BITGTS:S/^/build/} ${BITGTS:S/^/install/} TGTS+= ${BITGTS} +TGTS+= xdev xdev-build xdev-install + .ORDER: buildworld installworld .ORDER: buildworld distributeworld .ORDER: buildworld buildkernel ==== //depot/projects/arm/src/Makefile.inc1#8 (text+ko) ==== @@ -1203,6 +1203,7 @@ ############### + .if defined(XDEV) && defined(XDEV_ARCH) NOFUN=-DNO_FSCHG -DWITHOUT_HTML -DWITHOUT_INFO -DNO_LINT \ @@ -1224,14 +1225,17 @@ CD2MAKE=${CDENV} PATH=${CDTMP}/usr/bin:${XDTP}/usr/bin:${PATH} ${MAKE} ${NOFUN} XDDESTDIR=${DESTDIR}${XDTP} -.ORDER: cross-build cross-devel cross-devel-install -xdev: cross-build cross-devel cross-devel-install +.ORDER: xdev-build xdev-install +xdev: xdev-build xdev-install + +.ORDER: _xb-build-tools _xb-cross-tools +xdev-build: _xb-build-tools _xb-cross-tools -cross-build: +_xb-build-tools: ${_+_}cd ${.CURDIR}; \ ${CDBENV} ${MAKE} -f Makefile.inc1 build-tools -cross-devel: +_xb-cross-tools: .for _tool in \ gnu/usr.bin/binutils \ gnu/usr.bin/cc @@ -1244,7 +1248,7 @@ ${_+_}cd ${.CURDIR}; ${TMAKE} build-tools -_cdi-mtree: +_xi-mtree: ${_+_}@${ECHODIR} "mtree populating ${XDDESTDIR}" mkdir -p ${XDDESTDIR} mtree -deU -f ${.CURDIR}/etc/mtree/BSD.root.dist \ @@ -1253,8 +1257,11 @@ -p ${XDDESTDIR}/usr >/dev/null mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ -p ${XDDESTDIR}/usr/include >/dev/null - -cross-devel-install: _cdi-mtree + +.ORDER: _xi-mtree _xi-cross-tools _xi-includes _xi-libraries _xi-links +xdev-install: _xi-mtree _xi-cross-tools _xi-includes _xi-libraries _xi-links + +_xi-cross-tools: .for _tool in \ gnu/usr.bin/binutils \ gnu/usr.bin/cc @@ -1262,7 +1269,17 @@ cd ${.CURDIR}/${_tool}; \ ${CDMAKE} DIRPRFX=${_tool}/ install DESTDIR=${XDDESTDIR} .endfor - ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 par-includes DESTDIR=${XDDESTDIR} - ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 libraries DESTDIR=${XDDESTDIR} + +_xi-includes: + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 par-includes \ + DESTDIR=${XDDESTDIR} + +_xi-libraries: + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 libraries \ + DESTDIR=${XDDESTDIR} +_xi-links: + ${_+_}cd ${XDDESTDIR}/usr/bin; \ + for i in *; do \ + ln -s ../../${XDTP}/$$i ../../../../usr/bin/${XDDIR}-$$i; done .endif From owner-p4-projects@FreeBSD.ORG Thu Aug 24 23:31:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 84E0A16A505; Thu, 24 Aug 2006 23:31:11 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4257716A504 for ; Thu, 24 Aug 2006 23:31:11 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 458C343D49 for ; Thu, 24 Aug 2006 23:31:10 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7ONVAWp055760 for ; Thu, 24 Aug 2006 23:31:10 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7ONV252055734 for perforce@freebsd.org; Thu, 24 Aug 2006 23:31:02 GMT (envelope-from marcel@freebsd.org) Date: Thu, 24 Aug 2006 23:31:02 GMT Message-Id: <200608242331.k7ONV252055734@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 104998 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 23:31:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=104998 Change 104998 by marcel@marcel_nfs on 2006/08/24 23:30:22 IFC @104996 Affected files ... .. //depot/projects/gdb/Makefile.inc1#17 integrate .. //depot/projects/gdb/ObsoleteFiles.inc#3 integrate .. //depot/projects/gdb/UPDATING#26 integrate .. //depot/projects/gdb/bin/cp/cp.1#5 integrate .. //depot/projects/gdb/bin/cp/cp.c#4 integrate .. //depot/projects/gdb/bin/cp/extern.h#4 integrate .. //depot/projects/gdb/bin/cp/utils.c#5 integrate .. //depot/projects/gdb/bin/date/netdate.c#3 integrate .. //depot/projects/gdb/bin/df/df.c#12 integrate .. //depot/projects/gdb/bin/ed/main.c#3 integrate .. //depot/projects/gdb/bin/ps/ps.1#13 integrate .. //depot/projects/gdb/contrib/gdb/FREEBSD-Xlist#6 integrate .. //depot/projects/gdb/contrib/gdb/gdb/config/powerpc/fbsd.mh#1 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/powerpc/fbsd.mt#1 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/powerpc/nm-fbsd.h#1 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/rs6000/nm-rs6000.h#4 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/rs6000/nm-rs6000ly.h#4 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/rs6000/rs6000.mh#4 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/rs6000/rs6000.mt#4 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/rs6000/rs6000lynx.mh#4 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/rs6000/rs6000lynx.mt#4 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/rs6000/tm-rs6000.h#4 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/rs6000/tm-rs6000ly.h#4 branch .. //depot/projects/gdb/contrib/gdb/gdb/config/rs6000/xm-rs6000.h#4 branch .. //depot/projects/gdb/contrib/gdb/gdb/ppcfbsd-nat.c#1 branch .. //depot/projects/gdb/contrib/gdb/gdb/ppcfbsd-tdep.c#1 branch .. //depot/projects/gdb/contrib/gdb/gdb/ppcfbsd-tdep.h#1 branch .. //depot/projects/gdb/contrib/gdb/gdb/rs6000-nat.c#4 branch .. //depot/projects/gdb/contrib/gdb/gdb/rs6000-tdep.c#4 branch .. //depot/projects/gdb/contrib/ipfilter/BSD/Makefile#3 integrate .. //depot/projects/gdb/contrib/ipfilter/HISTORY#4 integrate .. //depot/projects/gdb/contrib/ipfilter/Makefile#4 integrate .. //depot/projects/gdb/contrib/ipfilter/bpf_filter.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/ip_fil.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/ipf.h#4 integrate .. //depot/projects/gdb/contrib/ipfilter/iplang/iplang_y.y#3 integrate .. //depot/projects/gdb/contrib/ipfilter/ipmon.h#2 integrate .. //depot/projects/gdb/contrib/ipfilter/ipsd/sbpf.c#3 integrate .. //depot/projects/gdb/contrib/ipfilter/ipsend/ipsend.c#4 integrate .. //depot/projects/gdb/contrib/ipfilter/ipsend/iptests.c#3 integrate .. //depot/projects/gdb/contrib/ipfilter/ipsend/lsock.c#3 integrate .. //depot/projects/gdb/contrib/ipfilter/ipsend/resend.c#3 integrate .. //depot/projects/gdb/contrib/ipfilter/ipsend/sbpf.c#3 integrate .. //depot/projects/gdb/contrib/ipfilter/ipsend/sock.c#3 integrate .. //depot/projects/gdb/contrib/ipfilter/ipt.h#3 integrate .. //depot/projects/gdb/contrib/ipfilter/lib/Makefile#2 integrate .. //depot/projects/gdb/contrib/ipfilter/lib/addicmp.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/lib/addkeep.c#2 delete .. //depot/projects/gdb/contrib/ipfilter/lib/facpri.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/lib/getport.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/lib/icmpcode.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/lib/ipft_tx.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/lib/make_range.c#2 delete .. //depot/projects/gdb/contrib/ipfilter/lib/optprint.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/lib/printfr.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/lib/printlog.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/man/ipmon.8#4 integrate .. //depot/projects/gdb/contrib/ipfilter/radix.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/samples/proxy.c#3 integrate .. //depot/projects/gdb/contrib/ipfilter/test/Makefile#4 integrate .. //depot/projects/gdb/contrib/ipfilter/test/expected/f20#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/expected/i1#3 integrate .. //depot/projects/gdb/contrib/ipfilter/test/expected/i10#2 integrate .. //depot/projects/gdb/contrib/ipfilter/test/expected/i11#4 integrate .. //depot/projects/gdb/contrib/ipfilter/test/expected/i18#2 integrate .. //depot/projects/gdb/contrib/ipfilter/test/expected/i5#3 integrate .. //depot/projects/gdb/contrib/ipfilter/test/expected/i8#3 integrate .. //depot/projects/gdb/contrib/ipfilter/test/expected/i9#3 integrate .. //depot/projects/gdb/contrib/ipfilter/test/expected/in2#3 integrate .. //depot/projects/gdb/contrib/ipfilter/test/expected/in5#2 integrate .. //depot/projects/gdb/contrib/ipfilter/test/expected/ni19#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/expected/ni20#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/expected/ni21#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/input/f2#2 integrate .. //depot/projects/gdb/contrib/ipfilter/test/input/f20#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/input/ni19#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/input/ni20#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/input/ni21#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/regress/f20#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/regress/i1#3 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/i10#2 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/i11#4 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/i15#2 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/i17#2 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/i18#2 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/i5#2 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/i8#3 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/i9#3 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/in2#3 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/in5#2 integrate .. //depot/projects/gdb/contrib/ipfilter/test/regress/ni19.ipf#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/regress/ni19.nat#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/regress/ni20.ipf#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/regress/ni20.nat#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/regress/ni21.ipf#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/regress/ni21.nat#1 branch .. //depot/projects/gdb/contrib/ipfilter/test/test.format#2 integrate .. //depot/projects/gdb/contrib/ipfilter/todo#3 branch .. //depot/projects/gdb/contrib/ipfilter/tools/ipf.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/tools/ipf_y.y#2 integrate .. //depot/projects/gdb/contrib/ipfilter/tools/ipfcomp.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/tools/ipfs.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/tools/ipfstat.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/tools/ipftest.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/tools/ipmon.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/tools/ipnat_y.y#2 integrate .. //depot/projects/gdb/contrib/ipfilter/tools/ipsyncm.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/tools/ipsyncs.c#2 integrate .. //depot/projects/gdb/contrib/ipfilter/tools/lexer.c#2 integrate .. //depot/projects/gdb/contrib/less/LICENSE#3 integrate .. //depot/projects/gdb/contrib/less/Makefile.aut#3 integrate .. //depot/projects/gdb/contrib/less/Makefile.in#3 integrate .. //depot/projects/gdb/contrib/less/Makefile.wnb#2 integrate .. //depot/projects/gdb/contrib/less/NEWS#3 integrate .. //depot/projects/gdb/contrib/less/README#3 integrate .. //depot/projects/gdb/contrib/less/brac.c#3 integrate .. //depot/projects/gdb/contrib/less/ch.c#3 integrate .. //depot/projects/gdb/contrib/less/charset.c#3 integrate .. //depot/projects/gdb/contrib/less/charset.h#1 branch .. //depot/projects/gdb/contrib/less/cmd.h#3 integrate .. //depot/projects/gdb/contrib/less/cmdbuf.c#3 integrate .. //depot/projects/gdb/contrib/less/command.c#3 integrate .. //depot/projects/gdb/contrib/less/configure#3 integrate .. //depot/projects/gdb/contrib/less/configure.ac#2 integrate .. //depot/projects/gdb/contrib/less/decode.c#3 integrate .. //depot/projects/gdb/contrib/less/defines.ds#3 integrate .. //depot/projects/gdb/contrib/less/defines.h.in#3 integrate .. //depot/projects/gdb/contrib/less/defines.o2#3 integrate .. //depot/projects/gdb/contrib/less/defines.o9#2 integrate .. //depot/projects/gdb/contrib/less/defines.wn#3 integrate .. //depot/projects/gdb/contrib/less/edit.c#3 integrate .. //depot/projects/gdb/contrib/less/filename.c#3 integrate .. //depot/projects/gdb/contrib/less/forwback.c#3 integrate .. //depot/projects/gdb/contrib/less/funcs.h#3 integrate .. //depot/projects/gdb/contrib/less/ifile.c#3 integrate .. //depot/projects/gdb/contrib/less/input.c#3 integrate .. //depot/projects/gdb/contrib/less/jump.c#3 integrate .. //depot/projects/gdb/contrib/less/less.h#3 integrate .. //depot/projects/gdb/contrib/less/less.man#3 integrate .. //depot/projects/gdb/contrib/less/less.nro#3 integrate .. //depot/projects/gdb/contrib/less/lessecho.c#3 integrate .. //depot/projects/gdb/contrib/less/lessecho.man#1 branch .. //depot/projects/gdb/contrib/less/lessecho.nro#1 branch .. //depot/projects/gdb/contrib/less/lesskey.c#3 integrate .. //depot/projects/gdb/contrib/less/lesskey.h#3 integrate .. //depot/projects/gdb/contrib/less/lesskey.man#3 integrate .. //depot/projects/gdb/contrib/less/lesskey.nro#3 integrate .. //depot/projects/gdb/contrib/less/lglob.h#3 integrate .. //depot/projects/gdb/contrib/less/line.c#4 integrate .. //depot/projects/gdb/contrib/less/linenum.c#3 integrate .. //depot/projects/gdb/contrib/less/lsystem.c#3 integrate .. //depot/projects/gdb/contrib/less/main.c#3 integrate .. //depot/projects/gdb/contrib/less/mark.c#3 integrate .. //depot/projects/gdb/contrib/less/mkhelp.c#3 integrate .. //depot/projects/gdb/contrib/less/optfunc.c#3 integrate .. //depot/projects/gdb/contrib/less/option.c#3 integrate .. //depot/projects/gdb/contrib/less/option.h#3 integrate .. //depot/projects/gdb/contrib/less/opttbl.c#3 integrate .. //depot/projects/gdb/contrib/less/os.c#3 integrate .. //depot/projects/gdb/contrib/less/output.c#3 integrate .. //depot/projects/gdb/contrib/less/pckeys.h#3 integrate .. //depot/projects/gdb/contrib/less/position.c#3 integrate .. //depot/projects/gdb/contrib/less/position.h#3 integrate .. //depot/projects/gdb/contrib/less/prompt.c#3 integrate .. //depot/projects/gdb/contrib/less/screen.c#3 integrate .. //depot/projects/gdb/contrib/less/scrsize.c#3 integrate .. //depot/projects/gdb/contrib/less/search.c#3 integrate .. //depot/projects/gdb/contrib/less/signal.c#3 integrate .. //depot/projects/gdb/contrib/less/tags.c#3 integrate .. //depot/projects/gdb/contrib/less/ttyin.c#3 integrate .. //depot/projects/gdb/contrib/less/version.c#3 integrate .. //depot/projects/gdb/contrib/pnpinfo/pnpinfo.c#2 integrate .. //depot/projects/gdb/contrib/sendmail/FREEBSD-upgrade#6 integrate .. //depot/projects/gdb/contrib/sendmail/RELEASE_NOTES#5 integrate .. //depot/projects/gdb/contrib/sendmail/cf/cf/submit.cf#5 integrate .. //depot/projects/gdb/contrib/sendmail/cf/m4/version.m4#5 integrate .. //depot/projects/gdb/contrib/sendmail/contrib/cidrexpand#3 integrate .. //depot/projects/gdb/contrib/sendmail/src/main.c#5 integrate .. //depot/projects/gdb/contrib/sendmail/src/queue.c#5 integrate .. //depot/projects/gdb/contrib/sendmail/src/srvrsmtp.c#5 integrate .. //depot/projects/gdb/contrib/sendmail/src/version.c#5 integrate .. //depot/projects/gdb/contrib/smbfs/smbutil/print.c#2 integrate .. //depot/projects/gdb/contrib/smbfs/smbutil/view.c#3 integrate .. //depot/projects/gdb/etc/defaults/rc.conf#17 integrate .. //depot/projects/gdb/etc/network.subr#4 integrate .. //depot/projects/gdb/etc/pccard_ether#6 integrate .. //depot/projects/gdb/etc/rc.d/Makefile#12 integrate .. //depot/projects/gdb/etc/rc.d/dhclient#7 integrate .. //depot/projects/gdb/etc/rc.d/ramdisk#4 delete .. //depot/projects/gdb/etc/rc.d/ramdisk-own#3 delete .. //depot/projects/gdb/etc/rc.d/sshd#5 integrate .. //depot/projects/gdb/etc/rc.d/ypxfrd#3 integrate .. //depot/projects/gdb/etc/rc.initdiskless#2 integrate .. //depot/projects/gdb/etc/rc.subr#11 integrate .. //depot/projects/gdb/etc/sendmail/freebsd.mc#3 integrate .. //depot/projects/gdb/etc/sendmail/freebsd.submit.mc#3 integrate .. //depot/projects/gdb/gnu/lib/libsupc++/Makefile#4 integrate .. //depot/projects/gdb/gnu/usr.bin/Makefile#8 integrate .. //depot/projects/gdb/gnu/usr.bin/binutils/libbfd/Makefile.arm#2 integrate .. //depot/projects/gdb/gnu/usr.bin/binutils/libbfd/Makefile.powerpc#4 integrate .. //depot/projects/gdb/gnu/usr.bin/gdb/Makefile#11 integrate .. //depot/projects/gdb/gnu/usr.bin/gdb/arch/alpha/Makefile#5 delete .. //depot/projects/gdb/gnu/usr.bin/gdb/arch/alpha/config.h#6 delete .. //depot/projects/gdb/gnu/usr.bin/gdb/arch/alpha/init.c#5 delete .. //depot/projects/gdb/gnu/usr.bin/gdb/arch/powerpc/Makefile#1 branch .. //depot/projects/gdb/gnu/usr.bin/gdb/arch/powerpc/config.h#1 branch .. //depot/projects/gdb/gnu/usr.bin/gdb/arch/powerpc/init.c#1 branch .. //depot/projects/gdb/gnu/usr.bin/gdb/kgdb/trgt_alpha.c#5 delete .. //depot/projects/gdb/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#5 integrate .. //depot/projects/gdb/gnu/usr.bin/gdb/kgdb/trgt_powerpc.c#2 integrate .. //depot/projects/gdb/gnu/usr.bin/groff/contrib/mm/Makefile#2 integrate .. //depot/projects/gdb/gnu/usr.bin/groff/tmac/Makefile#3 integrate .. //depot/projects/gdb/lib/Makefile#13 integrate .. //depot/projects/gdb/lib/csu/alpha/Makefile#2 delete .. //depot/projects/gdb/lib/csu/alpha/crt1.c#4 delete .. //depot/projects/gdb/lib/csu/alpha/crti.S#2 delete .. //depot/projects/gdb/lib/csu/alpha/crtn.S#2 delete .. //depot/projects/gdb/lib/libc/Makefile#6 integrate .. //depot/projects/gdb/lib/libc/alpha/Makefile.inc#3 delete .. //depot/projects/gdb/lib/libc/alpha/SYS.h#2 delete .. //depot/projects/gdb/lib/libc/alpha/Symbol.map#2 delete .. //depot/projects/gdb/lib/libc/alpha/_fpmath.h#4 delete .. //depot/projects/gdb/lib/libc/alpha/arith.h#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/Makefile.inc#6 delete .. //depot/projects/gdb/lib/libc/alpha/gen/_ctx_start.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/_set_tp.c#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/_setjmp.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/divrem.m4#3 delete .. //depot/projects/gdb/lib/libc/alpha/gen/fabs.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/flt_rounds.c#3 delete .. //depot/projects/gdb/lib/libc/alpha/gen/fpgetmask.c#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/fpgetround.c#3 delete .. //depot/projects/gdb/lib/libc/alpha/gen/fpgetsticky.c#3 delete .. //depot/projects/gdb/lib/libc/alpha/gen/fpsetmask.c#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/fpsetround.c#3 delete .. //depot/projects/gdb/lib/libc/alpha/gen/infinity.c#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/makecontext.c#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/modf.c#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/rfork_thread.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/setjmp.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/signalcontext.c#2 delete .. //depot/projects/gdb/lib/libc/alpha/gen/sigsetjmp.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/net/Makefile.inc#2 delete .. //depot/projects/gdb/lib/libc/alpha/net/byte_swap_2.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/net/byte_swap_4.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/net/htonl.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/net/htons.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/net/ntohl.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/net/ntohs.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/stdlib/Makefile.inc#2 delete .. //depot/projects/gdb/lib/libc/alpha/string/Makefile.inc#2 delete .. //depot/projects/gdb/lib/libc/alpha/string/bcopy.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/string/bzero.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/string/ffs.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/string/memcpy.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/string/memmove.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/Makefile.inc#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/Ovfork.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/brk.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/cerror.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/exect.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/fork.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/pipe.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/ptrace.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/sbrk.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/setlogin.S#2 delete .. //depot/projects/gdb/lib/libc/alpha/sys/sigreturn.S#2 delete .. //depot/projects/gdb/lib/libc/arm/net/htonl.S#2 integrate .. //depot/projects/gdb/lib/libc/arm/net/htons.S#2 integrate .. //depot/projects/gdb/lib/libc/arm/net/ntohl.S#2 integrate .. //depot/projects/gdb/lib/libc/arm/net/ntohs.S#2 integrate .. //depot/projects/gdb/lib/libc/stdio/findfp.c#3 integrate .. //depot/projects/gdb/lib/libc/stdlib/malloc.c#8 integrate .. //depot/projects/gdb/lib/libc/string/strcoll.3#2 integrate .. //depot/projects/gdb/lib/libc/sys/connect.2#3 integrate .. //depot/projects/gdb/lib/libc/sys/getfsstat.2#3 integrate .. //depot/projects/gdb/lib/libc_r/Makefile#4 integrate .. //depot/projects/gdb/lib/libc_r/arch/alpha/_atomic_lock.S#2 delete .. //depot/projects/gdb/lib/libdisk/write_alpha_disk.c#3 delete .. //depot/projects/gdb/lib/libio/Makefile#3 delete .. //depot/projects/gdb/lib/libio/alpha_sethae.c#2 delete .. //depot/projects/gdb/lib/libio/bwx.c#2 delete .. //depot/projects/gdb/lib/libio/io.c#2 delete .. //depot/projects/gdb/lib/libio/io.h#2 delete .. //depot/projects/gdb/lib/libio/swiz.c#2 delete .. //depot/projects/gdb/lib/libkvm/kvm_alpha.c#3 delete .. //depot/projects/gdb/lib/libpam/modules/pam_lastlog/pam_lastlog.c#3 integrate .. //depot/projects/gdb/lib/libpthread/Makefile#5 integrate .. //depot/projects/gdb/lib/libpthread/arch/alpha/Makefile.inc#2 delete .. //depot/projects/gdb/lib/libpthread/arch/alpha/alpha/context.S#2 delete .. //depot/projects/gdb/lib/libpthread/arch/alpha/alpha/enter_uts.S#4 delete .. //depot/projects/gdb/lib/libpthread/arch/alpha/alpha/pthread_md.c#3 delete .. //depot/projects/gdb/lib/libpthread/arch/alpha/include/atomic_ops.h#2 delete .. //depot/projects/gdb/lib/libpthread/arch/alpha/include/pthread_md.h#4 delete .. //depot/projects/gdb/lib/libstand/Makefile#4 integrate .. //depot/projects/gdb/lib/libstand/alpha/_setjmp.S#2 delete .. //depot/projects/gdb/lib/libthr/Makefile#4 integrate .. //depot/projects/gdb/lib/libthr/arch/alpha/Makefile.inc#3 delete .. //depot/projects/gdb/lib/libthr/arch/alpha/alpha/pthread_md.c#2 delete .. //depot/projects/gdb/lib/libthr/arch/alpha/include/pthread_md.h#2 delete .. //depot/projects/gdb/lib/libthread_db/arch/alpha/libc_r_md.c#5 delete .. //depot/projects/gdb/lib/libthread_db/arch/alpha/libpthread_md.c#2 delete .. //depot/projects/gdb/lib/libutil/login.conf.5#5 integrate .. //depot/projects/gdb/lib/msun/alpha/Makefile.inc#2 delete .. //depot/projects/gdb/lib/msun/alpha/Symbol.map#2 delete .. //depot/projects/gdb/lib/msun/alpha/fenv.c#3 delete .. //depot/projects/gdb/lib/msun/alpha/fenv.h#3 delete .. //depot/projects/gdb/lib/msun/alpha/s_copysign.S#2 delete .. //depot/projects/gdb/lib/msun/alpha/s_copysignf.S#2 delete .. //depot/projects/gdb/libexec/rtld-elf/alpha/Makefile.inc#2 delete .. //depot/projects/gdb/libexec/rtld-elf/alpha/ld.so.script#2 delete .. //depot/projects/gdb/libexec/rtld-elf/alpha/reloc.c#4 delete .. //depot/projects/gdb/libexec/rtld-elf/alpha/rtld_machdep.h#3 delete .. //depot/projects/gdb/libexec/rtld-elf/alpha/rtld_start.S#2 delete .. //depot/projects/gdb/release/Makefile#10 integrate .. //depot/projects/gdb/release/alpha/boot_crunch.conf#4 delete .. //depot/projects/gdb/release/alpha/mkisoimages.sh#6 delete .. //depot/projects/gdb/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#28 integrate .. //depot/projects/gdb/rescue/rescue/Makefile#6 integrate .. //depot/projects/gdb/sbin/bsdlabel/Makefile#2 integrate .. //depot/projects/gdb/sbin/camcontrol/camcontrol.8#5 integrate .. //depot/projects/gdb/sbin/camcontrol/camcontrol.c#4 integrate .. //depot/projects/gdb/sbin/dhclient/dhclient.8#2 integrate .. //depot/projects/gdb/sbin/dhclient/dhclient.c#2 integrate .. //depot/projects/gdb/sbin/dump/dump.8#8 integrate .. //depot/projects/gdb/sbin/dump/main.c#6 integrate .. //depot/projects/gdb/sbin/fsdb/fsdb.8#4 integrate .. //depot/projects/gdb/sbin/fsdb/fsdb.c#3 integrate .. //depot/projects/gdb/sbin/fsdb/fsdbutil.c#3 integrate .. //depot/projects/gdb/sbin/ggate/Makefile#3 integrate .. //depot/projects/gdb/sbin/ifconfig/ifclone.c#2 integrate .. //depot/projects/gdb/sbin/ifconfig/ifmedia.c#4 integrate .. //depot/projects/gdb/sbin/ipf/libipf/Makefile#2 integrate .. //depot/projects/gdb/sbin/ipfw/ipfw.8#12 integrate .. //depot/projects/gdb/sbin/ipfw/ipfw2.c#12 integrate .. //depot/projects/gdb/sbin/ping/Makefile#3 integrate .. //depot/projects/gdb/sbin/ping/ping.c#7 integrate .. //depot/projects/gdb/sbin/sysctl/sysctl.c#6 integrate .. //depot/projects/gdb/secure/lib/libcrypto/Makefile.inc#6 integrate .. //depot/projects/gdb/secure/lib/libcrypto/opensslconf-alpha.h#2 delete .. //depot/projects/gdb/share/examples/drivers/make_pseudo_driver.sh#4 integrate .. //depot/projects/gdb/share/man/man4/amdsmb.4#2 integrate .. //depot/projects/gdb/share/man/man4/ata.4#7 integrate .. //depot/projects/gdb/share/man/man4/fast_ipsec.4#3 integrate .. //depot/projects/gdb/share/man/man4/if_bridge.4#3 integrate .. //depot/projects/gdb/share/man/man4/ipsec.4#3 integrate .. //depot/projects/gdb/share/man/man4/ixgb.4#5 integrate .. //depot/projects/gdb/share/man/man4/nfsmb.4#2 integrate .. //depot/projects/gdb/share/man/man4/uplcom.4#6 integrate .. //depot/projects/gdb/share/man/man4/vlan.4#5 integrate .. //depot/projects/gdb/share/man/man5/rc.conf.5#17 integrate .. //depot/projects/gdb/share/man/man7/release.7#8 integrate .. //depot/projects/gdb/share/man/man8/rc.subr.8#6 integrate .. //depot/projects/gdb/share/man/man9/lock.9#3 integrate .. //depot/projects/gdb/share/man/man9/sysctl.9#2 integrate .. //depot/projects/gdb/share/mk/bsd.cpu.mk#10 integrate .. //depot/projects/gdb/share/mk/bsd.endian.mk#2 integrate .. //depot/projects/gdb/share/mk/bsd.port.mk#3 integrate .. //depot/projects/gdb/share/mk/bsd.sys.mk#5 integrate .. //depot/projects/gdb/sys/amd64/acpica/madt.c#7 integrate .. //depot/projects/gdb/sys/amd64/amd64/pmap.c#26 integrate .. //depot/projects/gdb/sys/amd64/amd64/support.S#12 integrate .. //depot/projects/gdb/sys/amd64/amd64/trap.c#15 integrate .. //depot/projects/gdb/sys/amd64/include/pmap.h#14 integrate .. //depot/projects/gdb/sys/amd64/linux32/linux.h#3 integrate .. //depot/projects/gdb/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/gdb/sys/amd64/linux32/linux32_machdep.c#3 integrate .. //depot/projects/gdb/sys/amd64/linux32/linux32_proto.h#3 integrate .. //depot/projects/gdb/sys/amd64/linux32/linux32_syscall.h#3 integrate .. //depot/projects/gdb/sys/amd64/linux32/linux32_sysent.c#3 integrate .. //depot/projects/gdb/sys/amd64/linux32/linux32_sysvec.c#3 integrate .. //depot/projects/gdb/sys/amd64/linux32/syscalls.conf#2 integrate .. //depot/projects/gdb/sys/amd64/linux32/syscalls.master#3 integrate .. //depot/projects/gdb/sys/arm/arm/elf_trampoline.c#2 integrate .. //depot/projects/gdb/sys/arm/arm/mem.c#3 integrate .. //depot/projects/gdb/sys/arm/include/elf.h#4 integrate .. //depot/projects/gdb/sys/boot/arm/Makefile#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/Makefile.inc#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/boot0/Makefile#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/boot0iic/Makefile#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/boot0iic/doit.c#2 delete .. //depot/projects/gdb/sys/boot/arm/at91/boot0iic/main.c#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/boot0spi/Makefile#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/boot0spi/doit.c#2 delete .. //depot/projects/gdb/sys/boot/arm/at91/boot0spi/main.c#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/bootiic/Makefile#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/bootiic/arm_init.S#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/bootiic/env_vars.c#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/bootiic/env_vars.h#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/bootiic/loader_prompt.c#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/bootiic/loader_prompt.h#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/bootiic/main.c#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/bootspi/Makefile#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/bootspi/arm_init.S#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/bootspi/arm_init.s#2 delete .. //depot/projects/gdb/sys/boot/arm/at91/bootspi/env_vars.c#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/bootspi/env_vars.h#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/bootspi/loader_prompt.c#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/bootspi/loader_prompt.h#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/bootspi/main.c#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/libat91/Makefile#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/libat91/at91rm9200.h#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.h#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/libat91/delay.c#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/libat91/eeprom.c#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/libat91/eeprom.h#2 delete .. //depot/projects/gdb/sys/boot/arm/at91/libat91/emac.c#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/libat91/emac.h#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/libat91/emac_init.c#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/libat91/env_vars.c#2 delete .. //depot/projects/gdb/sys/boot/arm/at91/libat91/env_vars.h#2 delete .. //depot/projects/gdb/sys/boot/arm/at91/libat91/lib.h#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/libat91/lib_AT91RM9200.h#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/libat91/loader_prompt.c#2 delete .. //depot/projects/gdb/sys/boot/arm/at91/libat91/loader_prompt.h#2 delete .. //depot/projects/gdb/sys/boot/arm/at91/libat91/mci_device.c#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/libat91/mci_device.h#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/libat91/p_string.c#2 integrate .. //depot/projects/gdb/sys/boot/arm/at91/libat91/p_string.h#2 delete .. //depot/projects/gdb/sys/boot/arm/at91/libat91/reset.c#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/libat91/sd-card.c#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/libat91/sd-card.h#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/libat91/spi_flash.c#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/libat91/spi_flash.h#1 branch .. //depot/projects/gdb/sys/boot/arm/at91/libat91/xmodem.c#2 integrate .. //depot/projects/gdb/sys/boot/common/help.common#5 integrate .. //depot/projects/gdb/sys/boot/common/loader.8#10 integrate .. //depot/projects/gdb/sys/boot/ficl/arm/sysdep.c#1 branch .. //depot/projects/gdb/sys/boot/ficl/arm/sysdep.h#1 branch .. //depot/projects/gdb/sys/boot/forth/loader.conf#13 integrate .. //depot/projects/gdb/sys/cam/scsi/scsi_all.c#4 integrate .. //depot/projects/gdb/sys/cam/scsi/scsi_all.h#3 integrate .. //depot/projects/gdb/sys/cam/scsi/scsi_pass.c#5 integrate .. //depot/projects/gdb/sys/compat/freebsd32/freebsd32.h#3 integrate .. //depot/projects/gdb/sys/compat/freebsd32/freebsd32_misc.c#8 integrate .. //depot/projects/gdb/sys/compat/freebsd32/freebsd32_proto.h#11 integrate .. //depot/projects/gdb/sys/compat/freebsd32/freebsd32_syscall.h#11 integrate .. //depot/projects/gdb/sys/compat/freebsd32/freebsd32_syscalls.c#11 integrate .. //depot/projects/gdb/sys/compat/freebsd32/freebsd32_sysent.c#11 integrate .. //depot/projects/gdb/sys/compat/freebsd32/syscalls.conf#2 integrate .. //depot/projects/gdb/sys/compat/freebsd32/syscalls.master#10 integrate .. //depot/projects/gdb/sys/compat/linux/linux_emul.c#1 branch .. //depot/projects/gdb/sys/compat/linux/linux_emul.h#1 branch .. //depot/projects/gdb/sys/compat/linux/linux_futex.c#1 branch .. //depot/projects/gdb/sys/compat/linux/linux_futex.h#1 branch .. //depot/projects/gdb/sys/compat/linux/linux_misc.c#7 integrate .. //depot/projects/gdb/sys/compat/linux/linux_signal.c#4 integrate .. //depot/projects/gdb/sys/compat/linux/linux_time.c#1 branch .. //depot/projects/gdb/sys/compat/linux/linux_util.c#4 integrate .. //depot/projects/gdb/sys/compat/ndis/ntoskrnl_var.h#11 integrate .. //depot/projects/gdb/sys/compat/svr4/svr4_proto.h#4 integrate .. //depot/projects/gdb/sys/compat/svr4/svr4_syscall.h#4 integrate .. //depot/projects/gdb/sys/compat/svr4/svr4_syscallnames.c#4 integrate .. //depot/projects/gdb/sys/compat/svr4/svr4_sysent.c#4 integrate .. //depot/projects/gdb/sys/compat/svr4/syscalls.conf#2 integrate .. //depot/projects/gdb/sys/conf/NOTES#40 integrate .. //depot/projects/gdb/sys/conf/files#46 integrate .. //depot/projects/gdb/sys/conf/files.amd64#18 integrate .. //depot/projects/gdb/sys/conf/files.i386#27 integrate .. //depot/projects/gdb/sys/conf/files.pc98#19 integrate .. //depot/projects/gdb/sys/conf/files.powerpc#9 integrate .. //depot/projects/gdb/sys/conf/kern.post.mk#8 integrate .. //depot/projects/gdb/sys/conf/kmod.mk#13 integrate .. //depot/projects/gdb/sys/conf/options#37 integrate .. //depot/projects/gdb/sys/contrib/dev/acpica/acfreebsd.h#9 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/fil.c#6 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_auth.c#4 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_auth.h#3 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_compat.h#5 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_fil.h#5 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#2 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_frag.c#4 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c#4 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_log.c#4 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_nat.c#4 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_pptp_pxy.c#2 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_proxy.c#3 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_rcmd_pxy.c#4 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_scan.c#2 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_state.c#4 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_sync.c#2 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ip_sync.h#2 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/ipl.h#4 integrate .. //depot/projects/gdb/sys/contrib/ipfilter/netinet/mlfk_ipl.c#5 integrate .. //depot/projects/gdb/sys/dev/acpi_support/acpi_ibm.c#2 integrate .. //depot/projects/gdb/sys/dev/acpica/Osd/OsdMemory.c#4 integrate .. //depot/projects/gdb/sys/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/gdb/sys/dev/arl/if_arlreg.h#6 integrate .. //depot/projects/gdb/sys/dev/ata/ata-chipset.c#16 integrate .. //depot/projects/gdb/sys/dev/ata/ata-pci.h#11 integrate .. //depot/projects/gdb/sys/dev/ath/if_ath.c#10 integrate .. //depot/projects/gdb/sys/dev/ath/if_athioctl.h#5 integrate .. //depot/projects/gdb/sys/dev/ath/if_athvar.h#5 integrate .. //depot/projects/gdb/sys/dev/bce/if_bce.c#2 integrate .. //depot/projects/gdb/sys/dev/bge/if_bge.c#10 integrate .. //depot/projects/gdb/sys/dev/bge/if_bgereg.h#6 integrate .. //depot/projects/gdb/sys/dev/em/if_em.c#12 integrate .. //depot/projects/gdb/sys/dev/em/if_em.h#5 integrate .. //depot/projects/gdb/sys/dev/em/if_em_hw.c#5 integrate .. //depot/projects/gdb/sys/dev/em/if_em_hw.h#5 integrate .. //depot/projects/gdb/sys/dev/exca/excareg.h#3 integrate .. //depot/projects/gdb/sys/dev/fb/creator.c#5 integrate .. //depot/projects/gdb/sys/dev/hme/if_hme.c#12 integrate .. //depot/projects/gdb/sys/dev/iicbus/if_ic.c#4 integrate .. //depot/projects/gdb/sys/dev/iicbus/iicbb.c#3 integrate .. //depot/projects/gdb/sys/dev/ips/ips.h#8 integrate .. //depot/projects/gdb/sys/dev/isp/isp.c#6 integrate .. //depot/projects/gdb/sys/dev/isp/isp_ioctl.h#5 integrate .. //depot/projects/gdb/sys/dev/isp/isp_pci.c#6 integrate .. //depot/projects/gdb/sys/dev/isp/ispvar.h#6 integrate .. //depot/projects/gdb/sys/dev/mii/brgphy.c#5 integrate .. //depot/projects/gdb/sys/dev/mii/rgephy.c#5 integrate .. //depot/projects/gdb/sys/dev/nfe/if_nfe.c#2 integrate .. //depot/projects/gdb/sys/dev/pccbb/pccbb.c#15 integrate .. //depot/projects/gdb/sys/dev/pccbb/pccbb_pci.c#3 integrate .. //depot/projects/gdb/sys/dev/pccbb/pccbbreg.h#3 integrate .. //depot/projects/gdb/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/gdb/sys/dev/sound/pci/ich.c#8 integrate .. //depot/projects/gdb/sys/dev/stge/if_stge.c#2 integrate .. //depot/projects/gdb/sys/dev/ti/if_ti.c#2 integrate .. //depot/projects/gdb/sys/dev/usb/usb_port.h#4 integrate .. //depot/projects/gdb/sys/fs/msdosfs/denode.h#3 integrate .. //depot/projects/gdb/sys/geom/eli/g_eli.c#3 integrate .. //depot/projects/gdb/sys/geom/eli/g_eli.h#3 integrate .. //depot/projects/gdb/sys/geom/label/g_label.c#7 integrate .. //depot/projects/gdb/sys/geom/label/g_label_msdosfs.c#3 integrate .. //depot/projects/gdb/sys/geom/label/g_label_msdosfs.h#1 branch .. //depot/projects/gdb/sys/geom/vinum/geom_vinum_raid5.h#4 integrate .. //depot/projects/gdb/sys/i386/acpica/acpi_machdep.c#12 integrate .. //depot/projects/gdb/sys/i386/acpica/madt.c#9 integrate .. //depot/projects/gdb/sys/i386/i386/pmap.c#24 integrate .. //depot/projects/gdb/sys/i386/i386/support.s#7 integrate .. //depot/projects/gdb/sys/i386/i386/trap.c#16 integrate .. //depot/projects/gdb/sys/i386/ibcs2/ibcs2_isc_syscall.h#4 integrate .. //depot/projects/gdb/sys/i386/ibcs2/ibcs2_isc_sysent.c#4 integrate .. //depot/projects/gdb/sys/i386/ibcs2/ibcs2_proto.h#5 integrate .. //depot/projects/gdb/sys/i386/ibcs2/ibcs2_syscall.h#5 integrate .. //depot/projects/gdb/sys/i386/ibcs2/ibcs2_sysent.c#6 integrate .. //depot/projects/gdb/sys/i386/ibcs2/ibcs2_xenix.h#4 integrate .. //depot/projects/gdb/sys/i386/ibcs2/ibcs2_xenix_syscall.h#4 integrate .. //depot/projects/gdb/sys/i386/ibcs2/ibcs2_xenix_sysent.c#4 integrate .. //depot/projects/gdb/sys/i386/ibcs2/syscalls.conf#2 integrate .. //depot/projects/gdb/sys/i386/ibcs2/syscalls.isc.conf#2 integrate .. //depot/projects/gdb/sys/i386/ibcs2/syscalls.xenix.conf#2 integrate .. //depot/projects/gdb/sys/i386/include/pmap.h#11 integrate .. //depot/projects/gdb/sys/i386/linux/linux.h#4 integrate .. //depot/projects/gdb/sys/i386/linux/linux_dummy.c#4 integrate .. //depot/projects/gdb/sys/i386/linux/linux_machdep.c#4 integrate .. //depot/projects/gdb/sys/i386/linux/linux_proto.h#6 integrate .. //depot/projects/gdb/sys/i386/linux/linux_syscall.h#6 integrate .. //depot/projects/gdb/sys/i386/linux/linux_sysent.c#6 integrate .. //depot/projects/gdb/sys/i386/linux/linux_sysvec.c#5 integrate .. //depot/projects/gdb/sys/i386/linux/syscalls.conf#2 integrate .. //depot/projects/gdb/sys/i386/linux/syscalls.master#6 integrate .. //depot/projects/gdb/sys/i386/xbox/xbox.c#2 integrate .. //depot/projects/gdb/sys/ia64/include/pmap.h#9 integrate .. //depot/projects/gdb/sys/kern/init_sysent.c#12 integrate .. //depot/projects/gdb/sys/kern/kern_exec.c#14 integrate .. //depot/projects/gdb/sys/kern/kern_fork.c#17 integrate .. //depot/projects/gdb/sys/kern/kern_lock.c#6 integrate .. //depot/projects/gdb/sys/kern/kern_mutex.c#11 integrate .. //depot/projects/gdb/sys/kern/kern_subr.c#8 integrate .. //depot/projects/gdb/sys/kern/kern_sx.c#5 integrate .. //depot/projects/gdb/sys/kern/kern_thr.c#12 integrate .. //depot/projects/gdb/sys/kern/kern_time.c#7 integrate .. //depot/projects/gdb/sys/kern/makesyscalls.sh#4 integrate .. //depot/projects/gdb/sys/kern/subr_turnstile.c#10 integrate .. //depot/projects/gdb/sys/kern/sys_process.c#14 integrate .. //depot/projects/gdb/sys/kern/syscalls.c#12 integrate .. //depot/projects/gdb/sys/kern/syscalls.master#11 integrate .. //depot/projects/gdb/sys/kern/systrace_args.c#2 integrate .. //depot/projects/gdb/sys/kern/uipc_sem.c#5 integrate .. //depot/projects/gdb/sys/kern/uipc_socket.c#28 integrate .. //depot/projects/gdb/sys/kern/uipc_usrreq.c#18 integrate .. //depot/projects/gdb/sys/kern/vfs_aio.c#7 integrate .. //depot/projects/gdb/sys/kern/vfs_mount.c#15 integrate .. //depot/projects/gdb/sys/libkern/strstr.c#1 branch .. //depot/projects/gdb/sys/modules/Makefile#19 integrate .. //depot/projects/gdb/sys/modules/if_ef/Makefile#4 integrate .. //depot/projects/gdb/sys/modules/if_ppp/Makefile#3 integrate .. //depot/projects/gdb/sys/modules/linprocfs/Makefile#4 integrate .. //depot/projects/gdb/sys/modules/linsysfs/Makefile#2 integrate .. //depot/projects/gdb/sys/modules/linux/Makefile#3 integrate .. //depot/projects/gdb/sys/modules/netgraph/mppc/Makefile#3 integrate .. //depot/projects/gdb/sys/modules/sound/sound/Makefile#4 integrate .. //depot/projects/gdb/sys/net/bridgestp.c#3 integrate .. //depot/projects/gdb/sys/net/if_bridge.c#3 integrate .. //depot/projects/gdb/sys/net/if_spppsubr.c#10 integrate .. //depot/projects/gdb/sys/net/if_vlan.c#15 integrate .. //depot/projects/gdb/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#10 integrate .. //depot/projects/gdb/sys/netgraph/ng_fec.c#10 integrate .. //depot/projects/gdb/sys/netinet/ip_fastfwd.c#9 integrate .. //depot/projects/gdb/sys/netinet/ip_fw.h#8 integrate .. //depot/projects/gdb/sys/netinet/ip_fw2.c#16 integrate .. //depot/projects/gdb/sys/netinet/ip_input.c#15 integrate .. //depot/projects/gdb/sys/netinet/ip_output.c#13 integrate .. //depot/projects/gdb/sys/netinet/tcp_input.c#17 integrate .. //depot/projects/gdb/sys/netinet/tcp_subr.c#15 integrate .. //depot/projects/gdb/sys/netinet/tcp_timer.c#6 integrate .. //depot/projects/gdb/sys/netinet/tcp_timer.h#5 integrate .. //depot/projects/gdb/sys/netsmb/smb_crypt.c#3 integrate .. //depot/projects/gdb/sys/netsmb/smb_iod.c#3 integrate .. //depot/projects/gdb/sys/netsmb/smb_rq.c#4 integrate .. //depot/projects/gdb/sys/netsmb/smb_rq.h#3 integrate .. //depot/projects/gdb/sys/nfsclient/nfs_lock.c#3 integrate .. //depot/projects/gdb/sys/pci/agp.c#13 integrate .. //depot/projects/gdb/sys/pci/agp_amd64.c#3 integrate .. //depot/projects/gdb/sys/pci/if_xl.c#12 integrate .. //depot/projects/gdb/sys/pci/nfsmb.c#2 integrate .. //depot/projects/gdb/sys/powerpc/include/gdb_machdep.h#1 branch .. //depot/projects/gdb/sys/powerpc/powerpc/gdb_machdep.c#1 branch .. //depot/projects/gdb/sys/security/audit/audit_pipe.c#2 integrate .. //depot/projects/gdb/sys/sys/dirent.h#3 integrate .. //depot/projects/gdb/sys/sys/eventhandler.h#5 integrate .. //depot/projects/gdb/sys/sys/imgact.h#6 integrate .. //depot/projects/gdb/sys/sys/kobj.h#3 integrate .. //depot/projects/gdb/sys/sys/libkern.h#6 integrate .. //depot/projects/gdb/sys/sys/lockmgr.h#4 integrate .. //depot/projects/gdb/sys/sys/sx.h#5 integrate .. //depot/projects/gdb/sys/sys/syscall.h#12 integrate .. //depot/projects/gdb/sys/sys/syscall.mk#12 integrate .. //depot/projects/gdb/sys/sys/sysctl.h#10 integrate .. //depot/projects/gdb/sys/sys/sysent.h#6 integrate .. //depot/projects/gdb/sys/sys/sysproto.h#12 integrate .. //depot/projects/gdb/sys/ufs/ffs/ffs_snapshot.c#9 integrate .. //depot/projects/gdb/sys/ufs/ufs/ufs_vnops.c#7 integrate .. //depot/projects/gdb/sys/vm/device_pager.c#7 integrate .. //depot/projects/gdb/sys/vm/vm_fault.c#9 integrate .. //depot/projects/gdb/sys/vm/vm_object.c#13 integrate .. //depot/projects/gdb/sys/vm/vm_page.c#20 integrate .. //depot/projects/gdb/sys/vm/vm_page.h#11 integrate .. //depot/projects/gdb/sys/vm/vm_pageq.c#5 integrate .. //depot/projects/gdb/sys/vm/vm_zeroidle.c#6 integrate .. //depot/projects/gdb/tools/regression/lib/msun/Makefile#3 integrate .. //depot/projects/gdb/tools/tools/ath/athstats/Makefile#2 integrate .. //depot/projects/gdb/tools/tools/ath/athstats/athstats.c#3 integrate .. //depot/projects/gdb/tools/tools/ath/athstats/athstats.h#1 branch .. //depot/projects/gdb/tools/tools/ath/athstats/main.c#1 branch .. //depot/projects/gdb/tools/tools/ath/athstats/statfoo.c#1 branch .. //depot/projects/gdb/tools/tools/ath/athstats/statfoo.h#1 branch .. //depot/projects/gdb/tools/tools/nanobsd/nanobsd.sh#2 integrate .. //depot/projects/gdb/tools/tools/net80211/wlanstats/Makefile#2 integrate .. //depot/projects/gdb/tools/tools/net80211/wlanstats/main.c#1 branch .. //depot/projects/gdb/tools/tools/net80211/wlanstats/statfoo.c#1 branch .. //depot/projects/gdb/tools/tools/net80211/wlanstats/statfoo.h#1 branch .. //depot/projects/gdb/tools/tools/net80211/wlanstats/wlanstats.c#2 integrate .. //depot/projects/gdb/tools/tools/net80211/wlanstats/wlanstats.h#1 branch .. //depot/projects/gdb/usr.bin/Makefile#12 integrate .. //depot/projects/gdb/usr.bin/calendar/calendars/calendar.freebsd#13 integrate .. //depot/projects/gdb/usr.bin/calendar/calendars/calendar.history#3 integrate .. //depot/projects/gdb/usr.bin/gprof/alpha.h#2 delete .. //depot/projects/gdb/usr.bin/gprof/gprof.h#6 integrate .. //depot/projects/gdb/usr.bin/less/defines.h#3 integrate .. //depot/projects/gdb/usr.bin/lessecho/Makefile#3 integrate .. //depot/projects/gdb/usr.bin/locate/locate/locate.1#7 integrate .. //depot/projects/gdb/usr.bin/pkill/Makefile#3 integrate .. //depot/projects/gdb/usr.bin/truss/alpha-fbsd.c#4 delete .. //depot/projects/gdb/usr.bin/uac/Makefile#2 delete .. //depot/projects/gdb/usr.bin/uac/uac.1#3 delete .. //depot/projects/gdb/usr.bin/uac/uac.c#2 delete .. //depot/projects/gdb/usr.bin/xlint/arch/alpha/targparam.h#2 delete .. //depot/projects/gdb/usr.sbin/Makefile#15 integrate .. //depot/projects/gdb/usr.sbin/arp/arp.8#5 integrate .. //depot/projects/gdb/usr.sbin/crunch/crunchide/Makefile#2 integrate .. //depot/projects/gdb/usr.sbin/named/Makefile#3 integrate .. //depot/projects/gdb/usr.sbin/newsyslog/newsyslog.c#11 integrate .. //depot/projects/gdb/usr.sbin/pkg_install/lib/url.c#4 integrate .. //depot/projects/gdb/usr.sbin/pkg_install/version/perform.c#4 integrate .. //depot/projects/gdb/usr.sbin/pnpinfo/Makefile#4 integrate .. //depot/projects/gdb/usr.sbin/rpc.lockd/kern.c#3 integrate .. //depot/projects/gdb/usr.sbin/rpc.lockd/lockd.c#3 integrate .. //depot/projects/gdb/usr.sbin/rpc.lockd/lockd_lock.c#6 integrate .. //depot/projects/gdb/usr.sbin/rpc.statd/procs.c#2 integrate .. //depot/projects/gdb/usr.sbin/rtsold/rtsold.8#4 integrate .. //depot/projects/gdb/usr.sbin/sysinstall/devices.c#5 integrate .. //depot/projects/gdb/usr.sbin/sysinstall/install.c#8 integrate .. //depot/projects/gdb/usr.sbin/traceroute/Makefile#3 integrate .. //depot/projects/gdb/usr.sbin/yppush/yppush_main.c#3 integrate Differences ... ==== //depot/projects/gdb/Makefile.inc1#17 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.552 2006/08/09 11:03:06 netchild Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.554 2006/08/24 17:02:26 imp Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -926,9 +926,6 @@ .if ${MK_RESCUE} != "no" || defined(RELEASEDIR) _crunchide= usr.sbin/crunch/crunchide .endif -.if ${TARGET_ARCH} == "alpha" -_elf2exe= usr.sbin/elf2exe -.endif .if ${TARGET_ARCH} == "i386" && defined(RELEASEDIR) _kgzip= usr.sbin/kgzip .endif @@ -941,7 +938,6 @@ usr.bin/xlint/lint1 usr.bin/xlint/lint2 usr.bin/xlint/xlint \ ${_btxld} \ ${_crunchide} \ - ${_elf2exe} \ ${_kgzip} ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_tool}; \ @@ -1036,8 +1032,9 @@ .for _lib in ${_startup_libs} ${_prebuild_libs:Nlib/libpam} ${_generic_libs} ${_lib}__L: .PHONY .if exists(${.CURDIR}/${_lib}) - ${_+_}@${ECHODIR} "===> ${_lib} (depend,all,install)"; \ + ${_+_}@${ECHODIR} "===> ${_lib} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_lib}; \ + ${MAKE} DIRPRFX=${_lib}/ obj; \ ${MAKE} DIRPRFX=${_lib}/ depend; \ ${MAKE} DIRPRFX=${_lib}/ all; \ ${MAKE} DIRPRFX=${_lib}/ install @@ -1048,8 +1045,9 @@ # static PAM library, and dynamic PAM library before dynamic PAM # modules. lib/libpam__L: .PHONY - ${_+_}@${ECHODIR} "===> lib/libpam (depend,all,install)"; \ + ${_+_}@${ECHODIR} "===> lib/libpam (obj,depend,all,install)"; \ cd ${.CURDIR}/lib/libpam; \ + ${MAKE} DIRPRFX=lib/libpam/ obj; \ ${MAKE} DIRPRFX=lib/libpam/ depend; \ ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET all; \ ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET install ==== //depot/projects/gdb/ObsoleteFiles.inc#3 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/ObsoleteFiles.inc,v 1.42 2006/08/04 21:29:22 brooks Exp $ +# $FreeBSD: src/ObsoleteFiles.inc,v 1.49 2006/08/22 11:12:09 flz Exp $ # # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and # directories (OLD_DIRS) which should get removed at an update. Recently @@ -14,6 +14,9 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20060822: ramdisk{,-own} have been replaced by mdconfig{,2} +OLD_FILES+=etc/rc.d/ramdisk +OLD_FILES+=etc/rc.d/ramdisk-own # 20060704: KAME compat file net_osdep.h removed OLD_FILES+=usr/include/net/net_osdep.h # 20060517: pcvt removed @@ -334,7 +337,7 @@ OLD_FILES+=usr/share/man/man1/sgsc.1.gz OLD_FILES+=usr/share/man/man4/i386/stl.4.gz OLD_FILES+=usr/share/man/man8/raidctl.8.gz -.if ${TARGET_ARCH} != "alpha" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "sparc64" # 20040130: libkse renamed to libpthread OLD_FILES+=usr/lib/libkse.a OLD_FILES+=usr/lib/libkse.so @@ -745,6 +748,7 @@ OLD_FILES+=usr/bin/perlcc OLD_FILES+=usr/bin/perldoc OLD_FILES+=usr/bin/suidperl +OLD_FILES+=usr/lib/pam_ftp.so OLD_FILES+=usr/libdata/perl/5.00503/CGI/Apache.pm OLD_FILES+=usr/libdata/perl/5.00503/CGI/Carp.pm OLD_FILES+=usr/libdata/perl/5.00503/CGI/Cookie.pm @@ -2726,7 +2730,209 @@ OLD_FILES+=usr/games/worm OLD_FILES+=usr/games/worms OLD_FILES+=usr/games/wump +OLD_FILES+=sbin/mount_reiserfs +OLD_FILES+=usr/bin/hesinfo +OLD_FILES+=usr/share/examples/etc/usbd.conf +OLD_FILES+=usr/share/examples/meteor/README +OLD_FILES+=usr/share/examples/meteor/rgb16.c +OLD_FILES+=usr/share/examples/meteor/rgb24.c +OLD_FILES+=usr/share/examples/meteor/test-n.c +OLD_FILES+=usr/share/examples/meteor/yuvpk.c +OLD_FILES+=usr/share/examples/meteor/yuvpl.c +OLD_FILES+=usr/share/examples/worm/README +OLD_FILES+=usr/share/examples/worm/makecdfs.sh +OLD_FILES+=usr/share/groff_font/devlj4/Makefile +OLD_FILES+=usr/share/groff_font/devlj4/text.map +OLD_FILES+=usr/share/groff_font/devlj4/special.map +OLD_FILES+=usr/share/misc/nslookup.help +OLD_FILES+=usr/share/sendmail/cf/feature/nodns.m4 +OLD_FILES+=usr/share/syscons/keymaps/lat-amer.kbd +OLD_FILES+=usr/share/vi/catalog/ru_SU.KOI8-R +OLD_FILES+=usr/share/zoneinfo/Africa/Timbuktu +OLD_FILES+=usr/share/zoneinfo/America/Buenos_Aires +OLD_FILES+=usr/share/zoneinfo/America/Cordoba +OLD_FILES+=usr/share/zoneinfo/America/Jujuy +OLD_FILES+=usr/share/zoneinfo/America/Catamarca +OLD_FILES+=usr/share/zoneinfo/America/Mendoza +OLD_FILES+=usr/share/zoneinfo/America/Indianapolis +OLD_FILES+=usr/share/zoneinfo/America/Louisville +OLD_FILES+=usr/share/zoneinfo/America/Argentina/ComodRivadavia +OLD_FILES+=usr/share/zoneinfo/Europe/Belfast +OLD_FILES+=usr/share/zoneinfo/Pacific/Yap +OLD_FILES+=usr/share/zoneinfo/SystemV/YST9 +OLD_FILES+=usr/share/zoneinfo/SystemV/PST8 +OLD_FILES+=usr/share/zoneinfo/SystemV/EST5EDT +OLD_FILES+=usr/share/zoneinfo/SystemV/CST6CDT +OLD_FILES+=usr/share/zoneinfo/SystemV/MST7MDT +OLD_FILES+=usr/share/zoneinfo/SystemV/PST8PDT +OLD_FILES+=usr/share/zoneinfo/SystemV/YST9YDT +OLD_FILES+=usr/share/zoneinfo/SystemV/HST10 +OLD_FILES+=usr/share/zoneinfo/SystemV/MST7 +OLD_FILES+=usr/share/zoneinfo/SystemV/EST5 +OLD_FILES+=usr/share/zoneinfo/SystemV/AST4ADT +OLD_FILES+=usr/share/zoneinfo/SystemV/CST6 +OLD_FILES+=usr/share/zoneinfo/SystemV/AST4 +OLD_FILES+=usr/share/doc/ntp/accopt.htm +OLD_FILES+=usr/share/doc/ntp/assoc.htm +OLD_FILES+=usr/share/doc/ntp/audio.htm +OLD_FILES+=usr/share/doc/ntp/authopt.htm +OLD_FILES+=usr/share/doc/ntp/biblio.htm +OLD_FILES+=usr/share/doc/ntp/build.htm +OLD_FILES+=usr/share/doc/ntp/clockopt.htm +OLD_FILES+=usr/share/doc/ntp/config.htm +OLD_FILES+=usr/share/doc/ntp/confopt.htm +OLD_FILES+=usr/share/doc/ntp/copyright.htm +OLD_FILES+=usr/share/doc/ntp/debug.htm +OLD_FILES+=usr/share/doc/ntp/driver1.htm +OLD_FILES+=usr/share/doc/ntp/driver10.htm +OLD_FILES+=usr/share/doc/ntp/driver11.htm +OLD_FILES+=usr/share/doc/ntp/driver12.htm +OLD_FILES+=usr/share/doc/ntp/driver16.htm +OLD_FILES+=usr/share/doc/ntp/driver18.htm +OLD_FILES+=usr/share/doc/ntp/driver19.htm +OLD_FILES+=usr/share/doc/ntp/driver2.htm +OLD_FILES+=usr/share/doc/ntp/driver20.htm +OLD_FILES+=usr/share/doc/ntp/driver22.htm +OLD_FILES+=usr/share/doc/ntp/driver23.htm +OLD_FILES+=usr/share/doc/ntp/driver24.htm +OLD_FILES+=usr/share/doc/ntp/driver26.htm +OLD_FILES+=usr/share/doc/ntp/driver27.htm +OLD_FILES+=usr/share/doc/ntp/driver28.htm +OLD_FILES+=usr/share/doc/ntp/driver29.htm +OLD_FILES+=usr/share/doc/ntp/driver3.htm +OLD_FILES+=usr/share/doc/ntp/driver30.htm +OLD_FILES+=usr/share/doc/ntp/driver32.htm +OLD_FILES+=usr/share/doc/ntp/driver33.htm +OLD_FILES+=usr/share/doc/ntp/driver34.htm +OLD_FILES+=usr/share/doc/ntp/driver35.htm +OLD_FILES+=usr/share/doc/ntp/driver36.htm +OLD_FILES+=usr/share/doc/ntp/driver37.htm +OLD_FILES+=usr/share/doc/ntp/driver4.htm +OLD_FILES+=usr/share/doc/ntp/driver5.htm +OLD_FILES+=usr/share/doc/ntp/driver6.htm +OLD_FILES+=usr/share/doc/ntp/driver7.htm +OLD_FILES+=usr/share/doc/ntp/driver8.htm +OLD_FILES+=usr/share/doc/ntp/driver9.htm +OLD_FILES+=usr/share/doc/ntp/exec.htm +OLD_FILES+=usr/share/doc/ntp/extern.htm +OLD_FILES+=usr/share/doc/ntp/gadget.htm +OLD_FILES+=usr/share/doc/ntp/hints.htm +OLD_FILES+=usr/share/doc/ntp/howto.htm +OLD_FILES+=usr/share/doc/ntp/htmlprimer.htm +OLD_FILES+=usr/share/doc/ntp/index.htm +OLD_FILES+=usr/share/doc/ntp/kern.htm +OLD_FILES+=usr/share/doc/ntp/kernpps.htm +OLD_FILES+=usr/share/doc/ntp/ldisc.htm +OLD_FILES+=usr/share/doc/ntp/measure.htm +OLD_FILES+=usr/share/doc/ntp/miscopt.htm +OLD_FILES+=usr/share/doc/ntp/monopt.htm +OLD_FILES+=usr/share/doc/ntp/mx4200data.htm +OLD_FILES+=usr/share/doc/ntp/notes.htm +OLD_FILES+=usr/share/doc/ntp/ntpd.htm +OLD_FILES+=usr/share/doc/ntp/ntpdate.htm +OLD_FILES+=usr/share/doc/ntp/ntpdc.htm +OLD_FILES+=usr/share/doc/ntp/ntpq.htm +OLD_FILES+=usr/share/doc/ntp/ntptime.htm +OLD_FILES+=usr/share/doc/ntp/ntptrace.htm +OLD_FILES+=usr/share/doc/ntp/parsedata.htm +OLD_FILES+=usr/share/doc/ntp/parsenew.htm +OLD_FILES+=usr/share/doc/ntp/patches.htm +OLD_FILES+=usr/share/doc/ntp/porting.htm +OLD_FILES+=usr/share/doc/ntp/pps.htm +OLD_FILES+=usr/share/doc/ntp/prefer.htm +OLD_FILES+=usr/share/doc/ntp/qth.htm +OLD_FILES+=usr/share/doc/ntp/quick.htm +OLD_FILES+=usr/share/doc/ntp/rdebug.htm +OLD_FILES+=usr/share/doc/ntp/refclock.htm +OLD_FILES+=usr/share/doc/ntp/release.htm +OLD_FILES+=usr/share/doc/ntp/tickadj.htm +OLD_FILES+=usr/share/doc/papers/nqnfs.ascii.gz +OLD_FILES+=usr/share/doc/papers/px.ascii.gz +OLD_FILES+=usr/share/man/man1/hesinfo.1.gz +OLD_FILES+=usr/share/man/man3/mbrune.3.gz +OLD_FILES+=usr/share/man/man3/rune.3.gz +OLD_FILES+=usr/share/man/man3/hesiod.3.gz +OLD_FILES+=usr/share/man/man3/mac_is_present_np.3.gz +OLD_FILES+=usr/share/man/man3/fpsetsticky.3.gz +OLD_FILES+=usr/share/man/man3/gss_krb5_copy_ccache.3.gz +OLD_FILES+=usr/share/man/man3/gss_krb5_compat_des3_mic.3.gz +OLD_FILES+=usr/share/man/man3/exp10f.3.gz +OLD_FILES+=usr/share/man/man3/exp10.3.gz +OLD_FILES+=usr/share/man/man3/mbrrune.3.gz +OLD_FILES+=usr/share/man/man3/mbmb.3.gz +OLD_FILES+=usr/share/man/man3/sputrune.3.gz +OLD_FILES+=usr/share/man/man3/sgetrune.3.gz +OLD_FILES+=usr/share/man/man3/setrunelocale.3.gz +OLD_FILES+=usr/share/man/man3/setinvalidrune.3.gz +OLD_FILES+=usr/share/man/man3/mbrune.3.gz +OLD_FILES+=usr/share/man/man3/rune.3.gz +OLD_FILES+=usr/share/man/man3/hesiod.3.gz +OLD_FILES+=usr/share/man/man3/mac_is_present_np.3.gz +OLD_FILES+=usr/share/man/man3/fpsetsticky.3.gz +OLD_FILES+=usr/share/man/man3/gss_krb5_copy_ccache.3.gz +OLD_FILES+=usr/share/man/man3/gss_krb5_compat_des3_mic.3.gz +OLD_FILES+=usr/share/man/man3/exp10f.3.gz +OLD_FILES+=usr/share/man/man3/exp10.3.gz +OLD_FILES+=usr/share/man/man3/mbrrune.3.gz +OLD_FILES+=usr/share/man/man3/mbmb.3.gz +OLD_FILES+=usr/share/man/man3/sputrune.3.gz +OLD_FILES+=usr/share/man/man3/sgetrune.3.gz +OLD_FILES+=usr/share/man/man3/setrunelocale.3.gz +OLD_FILES+=usr/share/man/man3/setinvalidrune.3.gz +OLD_FILES+=usr/share/man/man3/fungetrune.3.gz +OLD_FILES+=usr/share/man/man3/fputrune.3.gz +OLD_FILES+=usr/share/man/man3/fgetrune.3.gz +OLD_FILES+=usr/share/man/man5/hesiod.conf.5.gz +OLD_FILES+=usr/share/man/man5/usbd.conf.5.gz +.if ${TARGET_ARCH} != "i386" +OLD_FILES+=usr/share/man/man8/boot_i386.8.gz +.endif +OLD_FILES+=usr/share/man/man8/ofwdump.8.gz +OLD_FILES+=usr/share/man/man8/mount_reiserfs.8.gz +OLD_FILES+=usr/share/man/man9/VFS_START.9.gz +OLD_FILES+=usr/share/man/man9/cpu_critical_exit.9.gz +OLD_FILES+=usr/share/man/man9/cpu_critical_enter.9.gz +OLD_FILES+=usr/share/info/annotate.info.gz +OLD_FILES+=usr/share/info/tar.info.gz +OLD_FILES+=usr/share/bsnmp/defs/tree.def +OLD_FILES+=usr/share/bsnmp/defs/mibII_tree.def +OLD_FILES+=usr/share/bsnmp/defs/netgraph_tree.def +OLD_FILES+=usr/share/bsnmp/mibs/FOKUS-MIB.txt +OLD_FILES+=usr/share/bsnmp/mibs/BEGEMOT-MIB.txt +OLD_FILES+=usr/share/bsnmp/mibs/BEGEMOT-SNMPD.txt +OLD_FILES+=usr/share/bsnmp/mibs/BEGEMOT-NETGRAPH.txt +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.x +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xbn +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xn +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xr +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xs +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xu +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xc +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xsc +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.x +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xbn +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xn +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xr +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xs +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xu +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xc +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xsc +OLD_FILES+=usr/libdata/msdosfs/iso22dos +OLD_FILES+=usr/libdata/msdosfs/iso72dos +OLD_FILES+=usr/libdata/msdosfs/koi2dos +OLD_FILES+=usr/libdata/msdosfs/koi8u2dos +# The following files are *not* obsolete, they just don't get touched at +# install, so don't add them: +# - boot/loader.rc +# - usr/share/tmac/man.local +# - usr/share/tmac/mm/locale +# - usr/share/tmac/mm/se_locale +# - var/yp/Makefile + +# 20060729: OpenSSL 0.9.7e -> 0.9.8b upgrade +OLD_LIBS+=lib/libcrypto.so.4 +OLD_LIBS+=usr/lib/libssl.so.4 # 20060521: gethostbyaddr(3) ABI change OLD_LIBS+=usr/lib/libroken.so.8 OLD_LIBS+=lib/libatm.so.3 @@ -2863,7 +3069,7 @@ OLD_LIBS+=usr/lib/libisc.so.1 # 200408XX OLD_LIBS+=usr/lib/snmp_netgraph.so.1 -.if ${TARGET_ARCH} != "alpha" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "sparc64" # 20040130: libkse renamed to libpthread OLD_LIBS+=usr/lib/libkse.so.1 .endif @@ -2950,7 +3156,14 @@ # 199909XX OLD_LIBS+=usr/lib/libc_r.so.3 # ??? +OLD_LIBS+=usr/lib/libarchive.so.2 +OLD_LIBS+=usr/lib/libbsnmp.so.1 +OLD_LIBS+=usr/lib/libc_r.so.6 +OLD_LIBS+=usr/lib/libcipher.so.2 >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Aug 24 23:35:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3937D16A4E0; Thu, 24 Aug 2006 23:35:16 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 160E416A4DE for ; Thu, 24 Aug 2006 23:35:16 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B480C43D45 for ; Thu, 24 Aug 2006 23:35:15 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7ONZFFS056093 for ; Thu, 24 Aug 2006 23:35:15 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7ONZFNx056090 for perforce@freebsd.org; Thu, 24 Aug 2006 23:35:15 GMT (envelope-from imp@freebsd.org) Date: Thu, 24 Aug 2006 23:35:15 GMT Message-Id: <200608242335.k7ONZFNx056090@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 104999 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 23:35:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=104999 Change 104999 by imp@imp_bugs on 2006/08/24 23:34:19 fix links Affected files ... .. //depot/projects/arm/src/Makefile.inc1#9 edit Differences ... ==== //depot/projects/arm/src/Makefile.inc1#9 (text+ko) ==== @@ -1281,5 +1281,7 @@ _xi-links: ${_+_}cd ${XDDESTDIR}/usr/bin; \ for i in *; do \ - ln -s ../../${XDTP}/$$i ../../../../usr/bin/${XDDIR}-$$i; done + ln -s ../../${XDTP}/usr/bin/$$i \ + ../../../../usr/bin/${XDDIR}-$$i; \ + done .endif From owner-p4-projects@FreeBSD.ORG Thu Aug 24 23:35:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 801E016A556; Thu, 24 Aug 2006 23:35:16 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5C4AE16A51C for ; Thu, 24 Aug 2006 23:35:16 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1344243D49 for ; Thu, 24 Aug 2006 23:35:16 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7ONZF2L056099 for ; Thu, 24 Aug 2006 23:35:15 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7ONZF9s056096 for perforce@freebsd.org; Thu, 24 Aug 2006 23:35:15 GMT (envelope-from imp@freebsd.org) Date: Thu, 24 Aug 2006 23:35:15 GMT Message-Id: <200608242335.k7ONZF9s056096@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 105000 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 23:35:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=105000 Change 105000 by imp@imp_bugs on 2006/08/24 23:34:55 Move .endif so we don't see this target multiple times. Affected files ... .. //depot/projects/arm/src/gnu/usr.bin/cc/Makefile.inc#3 edit Differences ... ==== //depot/projects/arm/src/gnu/usr.bin/cc/Makefile.inc#3 (text+ko) ==== @@ -50,7 +50,6 @@ LIBCC_INT= ${.CURDIR}/../cc_int/libcc_int.a .endif -.endif # !__CC_MAKEFILE_INC__ .if ${TARGET_ARCH} == "arm" CLEANFILES+= arm-diked.md ${GCC_CPU}.md.orig fpa.md cirrus.md iwmmxt.md .endif @@ -65,3 +64,4 @@ patch ${GCC_CPU}.md ${.CURDIR}/../arm.md.diff mv ${GCC_CPU}.md ${.TARGET} .endif +.endif # !__CC_MAKEFILE_INC__ From owner-p4-projects@FreeBSD.ORG Thu Aug 24 23:36:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 42E1E16A4E5; Thu, 24 Aug 2006 23:36:20 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2091316A4DE for ; Thu, 24 Aug 2006 23:36:20 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1783243D60 for ; Thu, 24 Aug 2006 23:36:18 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7ONaHCL056201 for ; Thu, 24 Aug 2006 23:36:17 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7ONaHkQ056198 for perforce@freebsd.org; Thu, 24 Aug 2006 23:36:17 GMT (envelope-from marcel@freebsd.org) Date: Thu, 24 Aug 2006 23:36:17 GMT Message-Id: <200608242336.k7ONaHkQ056198@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 105001 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 23:36:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=105001 Change 105001 by marcel@marcel_nfs on 2006/08/24 23:35:25 Resolve merge conflict. Affected files ... .. //depot/projects/gdb/gnu/usr.bin/gdb/kgdb/trgt_powerpc.c#3 edit Differences ... ==== //depot/projects/gdb/gnu/usr.bin/gdb/kgdb/trgt_powerpc.c#3 (text+ko) ==== @@ -1,5 +1,5 @@ -/* - * Copyright (c) 2006 Peter Grehan +/*- + * Copyright (c) 2006 Marcel Moolenaar * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -12,10 +12,10 @@ * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * - * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD$"); +__FBSDID("$FreeBSD: src/gnu/usr.bin/gdb/kgdb/trgt_powerpc.c,v 1.1 2006/08/24 21:53:49 marcel Exp $"); #include #include @@ -40,7 +40,7 @@ #include #include #include -#include +#include #include "kgdb.h" @@ -84,43 +84,21 @@ } struct kgdb_frame_cache { - int intrframe; CORE_ADDR pc; CORE_ADDR sp; }; -static int kgdb_trgt_frame_offset[15] = { - offsetof(struct trapframe, tf_eax), - offsetof(struct trapframe, tf_ecx), - offsetof(struct trapframe, tf_edx), - offsetof(struct trapframe, tf_ebx), - offsetof(struct trapframe, tf_esp), - offsetof(struct trapframe, tf_ebp), - offsetof(struct trapframe, tf_esi), - offsetof(struct trapframe, tf_edi), - offsetof(struct trapframe, tf_eip), - offsetof(struct trapframe, tf_eflags), - offsetof(struct trapframe, tf_cs), - offsetof(struct trapframe, tf_ss), - offsetof(struct trapframe, tf_ds), - offsetof(struct trapframe, tf_es), - offsetof(struct trapframe, tf_fs) -}; - static struct kgdb_frame_cache * kgdb_trgt_frame_cache(struct frame_info *next_frame, void **this_cache) { char buf[MAX_REGISTER_SIZE]; struct kgdb_frame_cache *cache; - char *pname; cache = *this_cache; if (cache == NULL) { cache = FRAME_OBSTACK_ZALLOC(struct kgdb_frame_cache); *this_cache = cache; cache->pc = frame_func_unwind(next_frame); - find_pc_partial_function(cache->pc, &pname, NULL, NULL); - cache->intrframe = (pname[0] == 'X') ? 1 : 0; frame_unwind_register(next_frame, SP_REGNUM, buf); cache->sp = extract_unsigned_integer(buf, register_size(current_gdbarch, SP_REGNUM)); @@ -144,9 +122,11 @@ CORE_ADDR *addrp, int *realnump, void *valuep) { char dummy_valuep[MAX_REGISTER_SIZE]; + struct gdbarch_tdep *tdep; struct kgdb_frame_cache *cache; int ofs, regsz; + tdep = gdbarch_tdep(current_gdbarch); regsz = register_size(current_gdbarch, regnum); if (valuep == NULL) @@ -157,13 +137,25 @@ *lvalp = not_lval; *realnump = -1; - ofs = (regnum >= I386_EAX_REGNUM && regnum <= I386_FS_REGNUM) - ? kgdb_trgt_frame_offset[regnum] : -1; - if (ofs == -1) + if (regnum >= tdep->ppc_gp0_regnum && + regnum <= tdep->ppc_gplast_regnum) + ofs = offsetof(struct trapframe, + fixreg[regnum - tdep->ppc_gp0_regnum]); + else if (regnum == tdep->ppc_lr_regnum) + ofs = offsetof(struct trapframe, lr); + else if (regnum == tdep->ppc_cr_regnum) + ofs = offsetof(struct trapframe, cr); + else if (regnum == tdep->ppc_xer_regnum) + ofs = offsetof(struct trapframe, xer); + else if (regnum == tdep->ppc_ctr_regnum) + ofs = offsetof(struct trapframe, ctr); + else if (regnum == PC_REGNUM) + ofs = offsetof(struct trapframe, srr0); + else return; cache = kgdb_trgt_frame_cache(next_frame, this_cache); - *addrp = cache->sp + ofs + (cache->intrframe ? 4 : 0); + *addrp = cache->sp + 8 + ofs; *lvalp = lval_memory; target_read_memory(*addrp, valuep, regsz); } @@ -185,8 +177,8 @@ find_pc_partial_function(pc, &pname, NULL, NULL); if (pname == NULL) return (NULL); - if (strcmp(pname, "calltrap") == 0 || - (pname[0] == 'X' && pname[1] != '_')) + if (strcmp(pname, "asttrapexit") == 0 || + strcmp(pname, "trapexit") == 0) return (&kgdb_trgt_trapframe_unwind); /* printf("%s: %llx =%s\n", __func__, pc, pname); */ return (NULL); From owner-p4-projects@FreeBSD.ORG Fri Aug 25 10:27:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9BC4C16A4E2; Fri, 25 Aug 2006 10:27:09 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 740A416A4E0 for ; Fri, 25 Aug 2006 10:27:09 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 414ED43D45 for ; Fri, 25 Aug 2006 10:27:09 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7PAR9RY041095 for ; Fri, 25 Aug 2006 10:27:09 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7PAR8co041092 for perforce@freebsd.org; Fri, 25 Aug 2006 10:27:08 GMT (envelope-from piso@freebsd.org) Date: Fri, 25 Aug 2006 10:27:08 GMT Message-Id: <200608251027.k7PAR8co041092@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 105025 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Aug 2006 10:27:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=105025 Change 105025 by piso@piso_newluxor on 2006/08/25 10:26:09 Use tab after filename. Affected files ... .. //depot/projects/soc2005/libalias/sys/conf/files#6 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/conf/files#6 (text+ko) ==== @@ -1746,8 +1746,8 @@ netinet/libalias/alias_db.c optional libalias netinet/libalias/alias_proxy.c optional libalias netinet/libalias/alias_util.c optional libalias -netinet/libalias/alias_old.c optional libalias -netinet/libalias/alias_mod.c optional libalias +netinet/libalias/alias_old.c optional libalias +netinet/libalias/alias_mod.c optional libalias netinet6/ah_aesxcbcmac.c optional ipsec netinet6/ah_core.c optional ipsec netinet6/ah_input.c optional ipsec From owner-p4-projects@FreeBSD.ORG Fri Aug 25 10:35:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A5D1B16A4E0; Fri, 25 Aug 2006 10:35:22 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8081416A4DA for ; Fri, 25 Aug 2006 10:35:22 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4735A43D45 for ; Fri, 25 Aug 2006 10:35:22 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7PAZMDC041609 for ; Fri, 25 Aug 2006 10:35:22 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7PAZJJ1041606 for perforce@freebsd.org; Fri, 25 Aug 2006 10:35:19 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Fri, 25 Aug 2006 10:35:19 GMT Message-Id: <200608251035.k7PAZJJ1041606@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 105027 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Aug 2006 10:35:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=105027 Change 105027 by rwatson@rwatson_fledge on 2006/08/25 10:34:59 Add audit MFC news to TrustedBSD news page. Affected files ... .. //depot/projects/trustedbsd/www/news.page#7 edit Differences ... ==== //depot/projects/trustedbsd/www/news.page#7 (text+ko) ==== @@ -1,5 +1,6 @@