From owner-p4-projects@FreeBSD.ORG Sun Nov 16 09:57:15 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5A72D1065674; Sun, 16 Nov 2008 09:57:15 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 022A81065691 for ; Sun, 16 Nov 2008 09:57:15 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E058D8FC16 for ; Sun, 16 Nov 2008 09:57:14 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAG9vEeh014559 for ; Sun, 16 Nov 2008 09:57:14 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAG9vEg5014557 for perforce@freebsd.org; Sun, 16 Nov 2008 09:57:14 GMT (envelope-from hselasky@FreeBSD.org) Date: Sun, 16 Nov 2008 09:57:14 GMT Message-Id: <200811160957.mAG9vEg5014557@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 153026 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, 16 Nov 2008 09:57:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=153026 Change 153026 by hselasky@hselasky_laptop001 on 2008/11/16 09:57:01 Fix a race freeing the generic USB transfers when setting the configuration. Affected files ... .. //depot/projects/usb/src/lib/libusb20/libusb20_ugen20.c#11 edit .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_device.c#32 edit .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_generic.c#33 edit .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_generic.h#8 edit Differences ... ==== //depot/projects/usb/src/lib/libusb20/libusb20_ugen20.c#11 (text+ko) ==== @@ -307,10 +307,27 @@ return (0); /* success */ } +static void +ugen20_tr_release(struct libusb20_device *pdev) +{ + struct usb2_fs_uninit fs_uninit; + + if (pdev->nTransfer == 0) { + return; + } + /* release all pending USB transfers */ + if (pdev->privBeData != NULL) { + memset(&fs_uninit, 0, sizeof(fs_uninit)); + if (ioctl(pdev->file, USB_FS_UNINIT, &fs_uninit)) { + /* ignore any errors of this kind */ + } + } + return; +} + static int ugen20_tr_renew(struct libusb20_device *pdev) { - struct usb2_fs_uninit fs_uninit; struct usb2_fs_init fs_init; struct usb2_fs_endpoint *pfse; int error; @@ -325,12 +342,7 @@ } size = nMaxTransfer * sizeof(*pfse); - if (pdev->privBeData != NULL) { - memset(&fs_uninit, 0, sizeof(fs_uninit)); - if (ioctl(pdev->file, USB_FS_UNINIT, &fs_uninit)) { - /* ignore any errors of this kind */ - } - } else { + if (pdev->privBeData == NULL) { pfse = malloc(size); if (pfse == NULL) { error = LIBUSB20_ERROR_NO_MEM; @@ -338,7 +350,6 @@ } pdev->privBeData = pfse; } - /* reset endpoint data */ memset(pdev->privBeData, 0, size); @@ -509,6 +520,9 @@ { int temp = cfg_index; + /* release all active USB transfers */ + ugen20_tr_release(pdev); + if (ioctl(pdev->file_ctrl, USB_SET_CONFIG, &temp)) { return (LIBUSB20_ERROR_OTHER); } @@ -548,6 +562,9 @@ alt_iface.uai_interface_index = iface_index; alt_iface.uai_alt_index = alt_index; + /* release all active USB transfers */ + ugen20_tr_release(pdev); + if (ioctl(pdev->file_ctrl, USB_SET_ALTINTERFACE, &alt_iface)) { return (LIBUSB20_ERROR_OTHER); } @@ -559,6 +576,9 @@ { int temp = 0; + /* release all active USB transfers */ + ugen20_tr_release(pdev); + if (ioctl(pdev->file_ctrl, USB_DEVICEENUMERATE, &temp)) { return (LIBUSB20_ERROR_OTHER); } ==== //depot/projects/usb/src/sys/dev/usb2/core/usb2_device.c#32 (text+ko) ==== @@ -2114,38 +2114,23 @@ */ continue; } - if (f->dev_ep_index == 0) { - /* - * Don't free the generic control endpoint - * yet and make sure that any USB-FS - * activity is stopped! - */ - if (ugen_fs_uninit(f)) { - /* ignore any failures */ - DPRINTFN(10, "udev=%p ugen_fs_uninit() " - "failed! (ignored)\n", udev); - } + if ((f->dev_ep_index == 0) && + (f->fs_xfer == NULL)) { + /* no need to free this FIFO */ continue; } } else if (iface_index == USB_IFACE_INDEX_ANY) { if ((f->methods == &usb2_ugen_methods) && - (f->dev_ep_index == 0) && (flag == 0)) { - /* - * Don't free the generic control endpoint - * yet, but make sure that any USB-FS - * activity is stopped! - */ - if (ugen_fs_uninit(f)) { - /* ignore any failures */ - DPRINTFN(10, "udev=%p ugen_fs_uninit() " - "failed! (ignored)\n", udev); - } + (f->dev_ep_index == 0) && (flag == 0) && + (f->fs_xfer == NULL)) { + /* no need to free this FIFO */ continue; } } else { + /* no need to free this FIFO */ continue; } - /* free the FIFO */ + /* free this FIFO */ usb2_fifo_free(f); } return; ==== //depot/projects/usb/src/sys/dev/usb2/core/usb2_generic.c#33 (text+ko) ==== @@ -83,7 +83,7 @@ static int ugen_re_enumerate(struct usb2_fifo *f); static int ugen_iface_ioctl(struct usb2_fifo *f, u_long cmd, void *addr, int fflags); static uint8_t ugen_fs_get_complete(struct usb2_fifo *f, uint8_t *pindex); - +static int ugen_fs_uninit(struct usb2_fifo *f); /* structures */ @@ -192,6 +192,7 @@ if (ugen_fs_uninit(f)) { /* ignore any errors - we are closing */ + DPRINTFN(6, "no FIFOs\n"); } return; } @@ -591,6 +592,12 @@ /* no change needed */ return (0); } + /* make sure all FIFO's are gone */ + /* else there can be a deadlock */ + if (ugen_fs_uninit(f)) { + /* ignore any errors */ + DPRINTFN(6, "no FIFOs\n"); + } /* change setting - will free generic FIFOs, if any */ if (usb2_set_config_index(f->udev, index)) { return (EIO); @@ -612,6 +619,12 @@ /* not possible in device side mode */ return (ENOTTY); } + /* make sure all FIFO's are gone */ + /* else there can be a deadlock */ + if (ugen_fs_uninit(f)) { + /* ignore any errors */ + DPRINTFN(6, "no FIFOs\n"); + } /* change setting - will free generic FIFOs, if any */ if (usb2_set_alt_interface_index(f->udev, iface_index, alt_index)) { return (EIO); ==== //depot/projects/usb/src/sys/dev/usb2/core/usb2_generic.h#8 (text+ko) ==== @@ -29,6 +29,5 @@ extern struct usb2_fifo_methods usb2_ugen_methods; int ugen_do_request(struct usb2_fifo *f, struct usb2_ctl_request *ur); -int ugen_fs_uninit(struct usb2_fifo *f); #endif /* _USB2_GENERIC_H_ */ From owner-p4-projects@FreeBSD.ORG Sun Nov 16 11:34:59 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3D7D41065674; Sun, 16 Nov 2008 11:34:59 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 019AD106564A for ; Sun, 16 Nov 2008 11:34:59 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E34108FC0C for ; Sun, 16 Nov 2008 11:34:58 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGBYwIe023647 for ; Sun, 16 Nov 2008 11:34:58 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGBYw6Q023645 for perforce@freebsd.org; Sun, 16 Nov 2008 11:34:58 GMT (envelope-from hselasky@FreeBSD.org) Date: Sun, 16 Nov 2008 11:34:58 GMT Message-Id: <200811161134.mAGBYw6Q023645@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 153027 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, 16 Nov 2008 11:34:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=153027 Change 153027 by hselasky@hselasky_laptop001 on 2008/11/16 11:34:16 Improve USB re-enumeration code. Affected files ... .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_request.c#23 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb2/core/usb2_request.c#23 (text+ko) ==== @@ -1325,16 +1325,17 @@ usb2_error_t usb2_req_re_enumerate(struct usb2_device *udev, struct mtx *mtx) { - struct usb2_device_descriptor ddesc; struct usb2_device *parent_hub; usb2_error_t err; uint8_t old_addr; + if (udev->flags.usb2_mode != USB_MODE_HOST) { + return (USB_ERR_INVAL); + } old_addr = udev->address; parent_hub = udev->parent_hub; if (parent_hub == NULL) { - err = USB_ERR_INVAL; - goto done; + return (USB_ERR_INVAL); } err = usb2_req_reset_port(parent_hub, mtx, udev->port_no); if (err) { @@ -1347,6 +1348,9 @@ */ udev->address = USB_START_ADDR; + /* reset "bMaxPacketSize" */ + udev->ddesc.bMaxPacketSize = USB_MAX_IPACKET; + /* * Restore device address: */ @@ -1364,7 +1368,15 @@ usb2_pause_mtx(mtx, USB_SET_ADDRESS_SETTLE); /* get the device descriptor */ - err = usb2_req_get_device_desc(udev, mtx, &ddesc); + err = usb2_req_get_desc(udev, mtx, &udev->ddesc, + USB_MAX_IPACKET, USB_MAX_IPACKET, 0, UDESC_DEVICE, 0, 0); + if (err) { + DPRINTFN(0, "getting device descriptor " + "at addr %d failed!\n", udev->address); + goto done; + } + /* get the full device descriptor */ + err = usb2_req_get_device_desc(udev, mtx, &udev->ddesc); if (err) { DPRINTFN(0, "addr=%d, getting device " "descriptor failed!\n", old_addr); From owner-p4-projects@FreeBSD.ORG Sun Nov 16 11:55:20 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 66E1D1065675; Sun, 16 Nov 2008 11:55:20 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2AFCF1065670 for ; Sun, 16 Nov 2008 11:55:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 19BA88FC1C for ; Sun, 16 Nov 2008 11:55:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGBtJEQ025255 for ; Sun, 16 Nov 2008 11:55:19 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGBtJ2u025253 for perforce@freebsd.org; Sun, 16 Nov 2008 11:55:19 GMT (envelope-from hselasky@FreeBSD.org) Date: Sun, 16 Nov 2008 11:55:19 GMT Message-Id: <200811161155.mAGBtJ2u025253@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 153028 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, 16 Nov 2008 11:55:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=153028 Change 153028 by hselasky@hselasky_laptop001 on 2008/11/16 11:54:26 Fix problem with dfu-util and libusb. Affected files ... .. //depot/projects/usb/src/lib/libusb20/libusb20_compat01.c#8 edit Differences ... ==== //depot/projects/usb/src/lib/libusb20/libusb20_compat01.c#8 (text+ko) ==== @@ -821,36 +821,28 @@ struct libusb20_device *pdev; struct usb_device *udev; struct LIBUSB20_DEVICE_DESC_DECODED *ddesc; - struct libusb20_backend *pold; int err; /* cleanup after last device search */ + /* close all opened devices, if any */ - pold = usb_backend; - - pdev = NULL; - while ((pdev = libusb20_be_device_foreach(pold, pdev))) { - if (!pdev->is_opened) { - /* - * if the device has not been opened we free the - * device data - */ - udev = pdev->priv01Data; - libusb20_be_dequeue_device(pold, pdev); - libusb20_dev_free(pdev); - if (udev != NULL) { - LIST_DEL(usb_global_bus.devices, udev); - free(udev); - } - pdev = NULL; /* restart search */ + while ((pdev = libusb20_be_device_foreach(usb_backend, NULL))) { + udev = pdev->priv01Data; + libusb20_be_dequeue_device(usb_backend, pdev); + libusb20_dev_free(pdev); + if (udev != NULL) { + LIST_DEL(usb_global_bus.devices, udev); + free(udev); } } + /* free old USB backend, if any */ + + libusb20_be_free(usb_backend); + /* do a new backend device search */ - usb_backend = libusb20_be_alloc_default(); if (usb_backend == NULL) { - usb_backend = pold; /* restore */ return (-1); } /* iterate all devices */ @@ -904,17 +896,6 @@ LIST_ADD(usb_global_bus.devices, udev); } - /* move old devices over to the new USB backend */ - - while ((pdev = libusb20_be_device_foreach(pold, pdev))) { - libusb20_be_dequeue_device(pold, pdev); - libusb20_be_enqueue_device(usb_backend, pdev); - } - - /* free old backend, if any */ - - libusb20_be_free(pold); - return (0); /* success */ } From owner-p4-projects@FreeBSD.ORG Sun Nov 16 12:12:12 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 763531065691; Sun, 16 Nov 2008 12:12:12 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 38959106568A; Sun, 16 Nov 2008 12:12:12 +0000 (UTC) (envelope-from hselasky@c2i.net) Received: from swip.net (mailfe04.swip.net [212.247.154.97]) by mx1.freebsd.org (Postfix) with ESMTP id 5FFF28FC18; Sun, 16 Nov 2008 12:12:11 +0000 (UTC) (envelope-from hselasky@c2i.net) X-Cloudmark-Score: 0.000000 [] X-Cloudmark-Analysis: v=1.0 c=1 a=Oumcy1zCVZoA:10 a=89sYFII7q9YA:10 a=aniA1o7mVp4QawOfT9qHqA==:17 a=zuRaRlhO4Nr5gQTiq5IA:9 a=rKwk3yYKU2zWmFdr3AcA:7 a=0fWqXSj3WHROwVBhGyQ7Rw-DIDQA:4 a=LY0hPdMaydYA:10 Received: from [62.113.133.1] (account mc467741@c2i.net [62.113.133.1] verified) by mailfe04.swip.net (CommuniGate Pro SMTP 5.2.6) with ESMTPA id 1149969296; Sun, 16 Nov 2008 13:12:07 +0100 From: Hans Petter Selasky To: Alexander Motin Date: Sun, 16 Nov 2008 13:14:13 +0100 User-Agent: KMail/1.9.7 References: <200811080910.mA89AgTZ048172@repoman.freebsd.org> <200811141644.55773.hselasky@c2i.net> <491DC170.7090409@FreeBSD.org> In-Reply-To: <491DC170.7090409@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200811161314.13923.hselasky@c2i.net> Cc: Perforce Change Reviews Subject: Re: PERFORCE change 152649 for review - busdma problem 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, 16 Nov 2008 12:12:12 -0000 On Friday 14 November 2008, Alexander Motin wrote: > Hans Petter Selasky wrote: > > The thing is, you cannot specify how many bytes are on the first page > > which can take a full physical address. It is assumed that after the page > > offset wraps to zero a new page begins. > > > > Example: > > > > xxx: means data > > > > Virtual memory: > > PG0 PG1 > > > > | xxx|xxx | > > > > In busdma bounce buffer: > > > > PG0 PG1 > > > > |xxx |xxx | > > > > You see there is a hole just before PG1, and it is impossible to tell the > > USB hardware to skip this hole. > > I have seen very alike organization at SD host controller. There is SDMA > mode, to which most existing controllers limited. There is just initial > address and total data size can be specified. But on every page boundary > controller stops transfer and allows software to load the address of the > next data page. This technique is ugly and new specification provides > new ADMA and ADMA2 modes which allow start address and length to be > specified for every data segment. > > Now within my sdhci driver I have implemented page bouncing by myself, I > am preallocating one aligned 4K page and reloading it with new data on > each page boundary hit. There are many different data alignment > bugs/limitations in that controllers, so such unperfect DMA operation > also allows me to manage most of them. Linux sdhci driver instead just > don't use this page boundary interrupt, operating with only one > continuous memory block, completely disabling DMA on buggy controllers. > > If I understand correctly present busdma API (may be not), it does not > allow you to be sure that both of segment boundaries will be aligned to > the page boundaries. You are only specifying maximum number of segments > and maximum segment size, so busdma, if it wish, may theoretically give > you several small segments instead of single complete page. So if you > are not ready to receive uneven sized segments, you probably should not > specify that you want to receive more then 1 segment. Hi, Isn't the smallest segment size "PAGE_SIZE" bytes? That is what USB is using. Maybe I can make an exception for that case? maxsegsz=PAGE_SIZE, align=1? > > May be it would be good to add some flag to the bus_dma_tag_create() > which would signaled that hardware is able to handle segment boundaries > only at page boundaries. It would also allow us to properly combine > alignment and page boundary requirements. But it is surely not easy task. > Yes. I'm going to work on this today. I'm not sure what the best approach is, but a flag is probably the best, else you don't know if busdma has been patched for this or not. --HPS From owner-p4-projects@FreeBSD.ORG Sun Nov 16 12:23:49 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2DE221065672; Sun, 16 Nov 2008 12:23:49 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E60E01065670 for ; Sun, 16 Nov 2008 12:23:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D69648FC0A for ; Sun, 16 Nov 2008 12:23:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGCNmQ0028355 for ; Sun, 16 Nov 2008 12:23:48 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGCNm5b028353 for perforce@freebsd.org; Sun, 16 Nov 2008 12:23:48 GMT (envelope-from hselasky@FreeBSD.org) Date: Sun, 16 Nov 2008 12:23:48 GMT Message-Id: <200811161223.mAGCNm5b028353@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 153029 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, 16 Nov 2008 12:23:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=153029 Change 153029 by hselasky@hselasky_laptop001 on 2008/11/16 12:22:55 Revert busdma patch. A new patch will be worked out. Affected files ... .. //depot/projects/usb/src/sys/i386/i386/busdma_machdep.c#11 integrate Differences ... ==== //depot/projects/usb/src/sys/i386/i386/busdma_machdep.c#11 (text+ko) ==== @@ -938,8 +938,7 @@ if (op & BUS_DMASYNC_PREWRITE) { while (bpage != NULL) { bcopy((void *)bpage->datavaddr, - (void *)(bpage->vaddr + - ((vm_offset_t)(bpage->datavaddr) & PAGE_MASK)), + (void *)bpage->vaddr, bpage->datacount); bpage = STAILQ_NEXT(bpage, links); } @@ -948,8 +947,7 @@ if (op & BUS_DMASYNC_POSTREAD) { while (bpage != NULL) { - bcopy((void *)(bpage->vaddr + - ((vm_offset_t)(bpage->datavaddr) & PAGE_MASK)), + bcopy((void *)bpage->vaddr, (void *)bpage->datavaddr, bpage->datacount); bpage = STAILQ_NEXT(bpage, links); @@ -1151,7 +1149,7 @@ bpage->datavaddr = vaddr; bpage->datacount = size; STAILQ_INSERT_TAIL(&(map->bpages), bpage, links); - return (bpage->busaddr + ((vm_offset_t)vaddr & PAGE_MASK)); + return (bpage->busaddr); } static void From owner-p4-projects@FreeBSD.ORG Sun Nov 16 15:25:59 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C98E7106567C; Sun, 16 Nov 2008 15:25:58 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8DA211065678 for ; Sun, 16 Nov 2008 15:25:58 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8220C8FC14 for ; Sun, 16 Nov 2008 15:25:58 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGFPwhF055921 for ; Sun, 16 Nov 2008 15:25:58 GMT (envelope-from ed@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGFPwo5055919 for perforce@freebsd.org; Sun, 16 Nov 2008 15:25:58 GMT (envelope-from ed@FreeBSD.org) Date: Sun, 16 Nov 2008 15:25:58 GMT Message-Id: <200811161525.mAGFPwo5055919@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ed@FreeBSD.org using -f From: Ed Schouten To: Perforce Change Reviews Cc: Subject: PERFORCE change 153032 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, 16 Nov 2008 15:25:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=153032 Change 153032 by ed@ed_dull on 2008/11/16 15:25:25 TODO: Implement utmpx.h. Affected files ... .. //depot/projects/mpsafetty/ObsoleteFiles.inc#15 edit .. //depot/projects/mpsafetty/include/utmp.h#2 delete .. //depot/projects/mpsafetty/include/utmpx.h#1 add Differences ... ==== //depot/projects/mpsafetty/ObsoleteFiles.inc#15 (text+ko) ==== @@ -14,6 +14,7 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20081116: removal of utmp(5), replaced by utmpx(5) # 20080928: removal of inaccurate device_ids(9) manual page OLD_FILES+=usr/share/man/man9/device_ids.9.gz OLD_FILES+=usr/share/man/man9/major.9.gz From owner-p4-projects@FreeBSD.ORG Sun Nov 16 15:49:22 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C9B621065690; Sun, 16 Nov 2008 15:49:22 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8D6EA1065686 for ; Sun, 16 Nov 2008 15:49:22 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 68B088FC19 for ; Sun, 16 Nov 2008 15:49:22 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGFnMfW058743 for ; Sun, 16 Nov 2008 15:49:22 GMT (envelope-from ed@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGFnMvU058741 for perforce@freebsd.org; Sun, 16 Nov 2008 15:49:22 GMT (envelope-from ed@FreeBSD.org) Date: Sun, 16 Nov 2008 15:49:22 GMT Message-Id: <200811161549.mAGFnMvU058741@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ed@FreeBSD.org using -f From: Ed Schouten To: Perforce Change Reviews Cc: Subject: PERFORCE change 153034 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, 16 Nov 2008 15:49:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=153034 Change 153034 by ed@ed_dull on 2008/11/16 15:49:15 Forgot to add utmp.h to OLD_FILES. Affected files ... .. //depot/projects/mpsafetty/ObsoleteFiles.inc#16 edit Differences ... ==== //depot/projects/mpsafetty/ObsoleteFiles.inc#16 (text+ko) ==== @@ -15,6 +15,7 @@ # # 20081116: removal of utmp(5), replaced by utmpx(5) +OLD_FILES+=usr/include/utmp.h # 20080928: removal of inaccurate device_ids(9) manual page OLD_FILES+=usr/share/man/man9/device_ids.9.gz OLD_FILES+=usr/share/man/man9/major.9.gz From owner-p4-projects@FreeBSD.ORG Sun Nov 16 16:22:57 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F23051065674; Sun, 16 Nov 2008 16:22:56 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9D850106564A for ; Sun, 16 Nov 2008 16:22:56 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 905C58FC0C for ; Sun, 16 Nov 2008 16:22:56 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGGMuph066517 for ; Sun, 16 Nov 2008 16:22:56 GMT (envelope-from rene@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGGMum1066515 for perforce@freebsd.org; Sun, 16 Nov 2008 16:22:56 GMT (envelope-from rene@FreeBSD.org) Date: Sun, 16 Nov 2008 16:22:56 GMT Message-Id: <200811161622.mAGGMum1066515@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rene@FreeBSD.org using -f From: Rene Ladan To: Perforce Change Reviews Cc: Subject: PERFORCE change 153036 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, 16 Nov 2008 16:22:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=153036 Change 153036 by rene@rene_self on 2008/11/16 16:22:00 IFC Affected files ... .. //depot/projects/docproj_nl/en_US.ISO8859-1/articles/rc-scripting/article.sgml#2 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/Makefile#3 integrate .. //depot/projects/docproj_nl/www/share/sgml/commercial.consult.xml#6 integrate .. //depot/projects/docproj_nl/www/share/sgml/commercial.isp.xml#5 integrate Differences ... ==== //depot/projects/docproj_nl/en_US.ISO8859-1/articles/rc-scripting/article.sgml#2 (text+ko) ==== @@ -25,7 +25,7 @@ The FreeBSD Project - $FreeBSD: doc/en_US.ISO8859-1/articles/rc-scripting/article.sgml,v 1.13 2007/08/16 13:08:42 yar Exp $ + $FreeBSD: doc/en_US.ISO8859-1/articles/rc-scripting/article.sgml,v 1.14 2008/11/15 18:56:36 loader Exp $ &tm-attrib.freebsd; @@ -170,7 +170,7 @@ $EDITOR will not hurt. In order to write a well-tempered rc.d script for a system service, we should be able to answer the following questions - first: + first: @@ -190,6 +190,7 @@ From the examples that follow we will see why it is important to know the answers to these questions. + A dummy script @@ -916,7 +917,7 @@ In turn, argument_postcmd will not be invoked unless the main method returns a zero exit - code. + code. However, &man.rc.subr.8; can be instructed from the @@ -1001,7 +1002,7 @@ has disabled it mistakenly in &man.rc.conf.5;. With this general knowledge in mind, let us consider the - simple daemon script enhanced with dependency stuff: + simple daemon script enhanced with dependency stuff: #!/bin/sh @@ -1321,7 +1322,7 @@ not only to a standard one. We have added a custom method named , and it can take advantage of the extra arguments not less than - does. E.g.: + does. E.g.: &prompt.root; /etc/rc.d/dummy kiss A ghost gives you a kiss. ==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/Makefile#3 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: doc/en_US.ISO8859-1/books/handbook/Makefile,v 1.110 2008/09/28 12:54:12 trhodes Exp $ +# $FreeBSD: doc/en_US.ISO8859-1/books/handbook/Makefile,v 1.111 2008/11/14 22:19:18 manolis Exp $ # # Build the FreeBSD Handbook. # @@ -23,6 +23,13 @@ # easily be imported into PGP/GPG. # # ------------------------------------------------------------------------ +# +# To add a new chapter to the Handbook: +# +# - Update this Makefile, chapters.ent and book.sgml +# - Add a descriptive entry for the new chapter in preface/preface.sgml +# +# ------------------------------------------------------------------------ .PATH: ${.CURDIR}/../../share/sgml/glossary ==== //depot/projects/docproj_nl/www/share/sgml/commercial.consult.xml#6 (text+ko) ==== @@ -1,12 +1,12 @@ - + - $FreeBSD: www/share/sgml/commercial.consult.xml,v 1.55 2008/10/21 07:28:34 remko Exp $ + $FreeBSD: www/share/sgml/commercial.consult.xml,v 1.57 2008/11/14 21:12:47 jkois Exp $ @@ -100,6 +100,18 @@ + + ALE Software + http://linux.wroclaw.pl/ + + We offer IT consulting, systems integration and corporate information + systems based on BSD software. For more information, email + admin@linux.wroclaw.pl or + visit our website. We operate + mostly in Eastern Europe (Poland). + + + ASG Technologies http://www.asgtechnologies.com/ @@ -116,6 +128,20 @@ + + AnonBSD Inc. + https://sites.google.com/site/anonbsd/ + + We provide IT environment consulting. Support in FreeBSD, OpenBSD, + Linux (Debian, RedHat, SUSE, Gentoo, Slackware) and OpenSolaris. High + availability, virtualization, monitoring, security, deployment, + network infrastructure. We service in São Paulo/SP and + Campinas/SP in Brazil. Contact us via e-mail (ricardo.ichizo@gmail.com) or + by phone at +55 (19) 8202-1567. + + + AYN & Associates http://www.aynassociates.com ==== //depot/projects/docproj_nl/www/share/sgml/commercial.isp.xml#5 (text+ko) ==== @@ -1,15 +1,28 @@ - + - $FreeBSD: www/share/sgml/commercial.isp.xml,v 1.38 2008/10/22 19:52:02 jkois Exp $ + $FreeBSD: www/share/sgml/commercial.isp.xml,v 1.40 2008/11/14 21:37:31 jkois Exp $ + + Astute Hosting Incorporated + http://www.astutehosting.com + + Astute Hosting provides advanced high-availability semi-managed + dedicated hosting with all the flexibility of co-location but at + a better price point than most unmanaged dedicated solutions. + FreeBSD is our OS of choice, and what we run on our own servers and + workstations. Our bandwidth consists of 4 Tier 1's, and hundreds of + peers across North America, Europe, and Asia. + + + IP Global.net http://www.ipglobal.net/ @@ -159,7 +172,7 @@ http://www.hostpoint.ch/ With 55,000 customers and 100,000 domain names (status quo - December 2007), Hostpoint is Switzerland’s leading hosting + December 2007), Hostpoint is Switzerlands leading hosting provider. Hostpoint offers website and application hosting services throughout Switzerland. From owner-p4-projects@FreeBSD.ORG Sun Nov 16 16:54:29 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9F3BD106568F; Sun, 16 Nov 2008 16:54:29 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C755C106567F for ; Sun, 16 Nov 2008 16:54:28 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id BB15A8FC18 for ; Sun, 16 Nov 2008 16:54:28 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGGsSAt078545 for ; Sun, 16 Nov 2008 16:54:28 GMT (envelope-from rene@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGGsSKZ078543 for perforce@freebsd.org; Sun, 16 Nov 2008 16:54:28 GMT (envelope-from rene@FreeBSD.org) Date: Sun, 16 Nov 2008 16:54:28 GMT Message-Id: <200811161654.mAGGsSKZ078543@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rene@FreeBSD.org using -f From: Rene Ladan To: Perforce Change Reviews Cc: Subject: PERFORCE change 153038 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, 16 Nov 2008 16:54:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=153038 Change 153038 by rene@rene_self on 2008/11/16 16:53:45 MFen handbook/config 1.235 -> 1.236 Checked build, spelling, whitepace Affected files ... .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/config/chapter.sgml#9 edit Differences ... ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/config/chapter.sgml#9 (text+ko) ==== @@ -4,7 +4,7 @@ $FreeBSD: doc/nl_NL.ISO8859-1/books/handbook/config/chapter.sgml,v 1.16 2008/11/10 20:42:03 rene Exp $ %SOURCE% en_US.ISO8859-1/books/handbook/config/chapter.sgml - %SRCID% 1.235 + %SRCID% 1.236 --> @@ -131,29 +131,42 @@ of &man.sysinstall.8; is het van belang dat op een harde schijf de gegevensoverdracht het snelst is aan de buitenste sporen en het langzaamst aan de binnenste. Kleinere en - veelgebruikte bestandssystemen kunnen daarom het beste aan het - begin van de schijf geplaatst worden, terwijl grotere - partities als /usr meer naar het einde - van de schijf geplaatst kunnen worden. Het is een goed idee - om partities aan te maken in deze of gelijksoortige volgorde: - root, swap, /var, + veelgebruikte bestandssystemen kunnen daarom het beste aan de + buitenkant van de schijf geplaatst worden, terwijl grotere + partities als /usr meer naar de + binnenkant van de schijf geplaatst kunnen worden. Het is een + goed idee om partities aan te maken in deze of gelijksoortige + volgorde: root, swap, /var, /usr. - De grootte van /var hangt af van de - wijze waarop de machine gebruikt gaat worden. - /var wordt gebruikt voor onder meer - mailboxen, logbestanden en printergegevens en -wachtrijen. - Mailboxen en logbestanden kunnen onverwacht groot worden, - afhankelijk van het aantal systeemgebruikers en de bewaarduur - van logbestanden. Meestal is minder dan een gigabyte - voldoende. /var/tmp moet wel groot - genoeg moet zijn om pakketten te kunnen bevatten. + De grootte van de /var-partitie hangt + af van de wijze waarop de machine gebruikt gaat worden. Het + bestandssysteem /var wordt gebruikt voor + onder meer postbussen, logbestanden en printergegevens en + -wachtrijen. Postbussen en logbestanden kunnen onverwacht + groot worden, afhankelijk van het aantal systeemgebruikers en + de bewaarduur van logbestanden. De meeste gebruikers zullen + zelden meer dan ongeveer een gigabyte aan vrije schijfruimte + op /var nodig hebben. + + + Er zijn een aantal gevallen waar een grote hoeveelheid + ruimte in /var/tmp nodig is. Wanneer + er nieuwe software wordt geïnstalleerd met + &man.pkg.add.1; pakken de pakketprogramma's een tijdelijke + kopie van de pakketten uit in /var/tmp. + Grote softwarepakketten, zoals + Firefox of + OpenOffice kunnen lastig zijn om + te installeren wanneer er onvoldoende vrije schijfruimte + beschikbaar is onder /var/tmp. + De partitie /usr bevat veel van de - benodigde systeembestanden. Die bevat tevens de &man.ports.7; + benodigde systeembestanden, waaronder de &man.ports.7; collectie (aanbevolen) en de broncode (optioneel). Beide zijn - optioneel tijdens de installatie. Voor deze partitie wordt - tenminste 2 gigabyte aanbevolen. + optioneel tijdens de installatie, maar we raden voor deze + partitie tenminste 2 gigabyte aan. Het is verstandig rekening te houden met de vereiste schijfruimte bij het kiezen van partitiegroottes. Als in een From owner-p4-projects@FreeBSD.ORG Sun Nov 16 16:57:32 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7AFD8106567E; Sun, 16 Nov 2008 16:57:32 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3EBBF1065670 for ; Sun, 16 Nov 2008 16:57:32 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 334F38FC17 for ; Sun, 16 Nov 2008 16:57:32 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGGvVFB078887 for ; Sun, 16 Nov 2008 16:57:31 GMT (envelope-from rene@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGGvVXS078885 for perforce@freebsd.org; Sun, 16 Nov 2008 16:57:31 GMT (envelope-from rene@FreeBSD.org) Date: Sun, 16 Nov 2008 16:57:31 GMT Message-Id: <200811161657.mAGGvVXS078885@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rene@FreeBSD.org using -f From: Rene Ladan To: Perforce Change Reviews Cc: Subject: PERFORCE change 153039 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, 16 Nov 2008 16:57:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=153039 Change 153039 by rene@rene_self on 2008/11/16 16:57:15 MFen handbook/Makefile 1.110 -> 1.111 Checked spelling, whitespace Affected files ... .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/Makefile#11 edit Differences ... ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/Makefile#11 (text+ko) ==== @@ -3,7 +3,7 @@ # $FreeBSDnl: doc/nl_NL.ISO8859-1/books/handbook/Makefile,v 1.19 2006/01/03 21:17:07 siebrand Exp $ # # %SOURCE% en_US.ISO8859-1/books/handbook/Makefile -# %SRCID% 1.110 +# %SRCID% 1.111 # # Bouw het Nederlandse FreeBSD Handboek. # @@ -28,6 +28,12 @@ # PGP/GPG ingelezen kan worden. # # ------------------------------------------------------------------------ +# Om een nieuw hoofdstuk aan het Handboek toe te voegen: +# +# - Werk deze Makefile, chapters.ent en book.sgml bij +# - Voeg een beschrijving voor het nieuwe hoofdstuk toe aan preface/preface.sgml +# +# ------------------------------------------------------------------------ .PATH: ${.CURDIR}/../../share/sgml/glossary From owner-p4-projects@FreeBSD.ORG Sun Nov 16 20:31:19 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 78EE3106568F; Sun, 16 Nov 2008 20:31:19 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3C90B106568B for ; Sun, 16 Nov 2008 20:31:19 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2D40F8FC1C for ; Sun, 16 Nov 2008 20:31:19 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGKVIsd002551 for ; Sun, 16 Nov 2008 20:31:18 GMT (envelope-from rene@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGKVIUR002549 for perforce@freebsd.org; Sun, 16 Nov 2008 20:31:18 GMT (envelope-from rene@FreeBSD.org) Date: Sun, 16 Nov 2008 20:31:18 GMT Message-Id: <200811162031.mAGKVIUR002549@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rene@FreeBSD.org using -f From: Rene Ladan To: Perforce Change Reviews Cc: Subject: PERFORCE change 153053 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, 16 Nov 2008 20:31:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=153053 Change 153053 by rene@rene_self on 2008/11/16 20:30:57 Add a missing and a missing host2 to the advanced-networking chapter. Affected files ... .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#7 edit Differences ... ==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#7 (text+ko) ==== @@ -1167,6 +1167,7 @@ ifconfig_ath0="ssid your_ssid_here inet 192.168.1.100 netmask 255.255.255.0" + WPA @@ -4811,7 +4812,7 @@ 127.0.0.1 localhost.my.domain localhost 10.0.0.1 host1.my.domain host1 -10.0.0.2 host2.my.domain +10.0.0.2 host2.my.domain host2 To confirm the connection works, go to each host and ping the other. For example, on host1: From owner-p4-projects@FreeBSD.ORG Sun Nov 16 21:07:56 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C16A5106567A; Sun, 16 Nov 2008 21:07:56 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 81BFB1065674 for ; Sun, 16 Nov 2008 21:07:56 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7366E8FC18 for ; Sun, 16 Nov 2008 21:07:56 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGL7ulf015763 for ; Sun, 16 Nov 2008 21:07:56 GMT (envelope-from rene@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGL7upb015761 for perforce@freebsd.org; Sun, 16 Nov 2008 21:07:56 GMT (envelope-from rene@FreeBSD.org) Date: Sun, 16 Nov 2008 21:07:56 GMT Message-Id: <200811162107.mAGL7upb015761@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rene@FreeBSD.org using -f From: Rene Ladan To: Perforce Change Reviews Cc: Subject: PERFORCE change 153055 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, 16 Nov 2008 21:07:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=153055 Change 153055 by rene@rene_self on 2008/11/16 21:07:29 MFen advanced-networking 1.414 -> 1.415 Checked build. Affected files ... .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#17 edit Differences ... ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#17 (text+ko) ==== @@ -4,7 +4,7 @@ $FreeBSD: doc/nl_NL.ISO8859-1/books/handbook/advanced-networking/chapter.sgml,v 1.5 2008/10/18 14:24:46 remko Exp $ %SOURCE% en_US.ISO8859-1/books/handbook/advanced-networking/chapter.sgml - %SRCID% 1.414 + %SRCID% 1.415 --> @@ -1280,7 +1280,7 @@ ifconfig_ath0="ssid uw_ssid_hier inet 192.168.1.100 netmask 255.255.255.0" - + WPA @@ -5279,7 +5279,7 @@ 127.0.0.1 localhost.mijn.domein localhost 10.0.0.1 host1.mijn.domein host1 -10.0.0.2 host2.mijn.domein +10.0.0.2 host2.mijn.domein host2 Ga naar elke host en ping de andere om te bevestigen dat de verbinding werkt. Bijvoorbeeld, op @@ -6051,7 +6051,7 @@ net.inet.carp.arpbalance Balanceer lokaal netwerkverkeer met - ARP. Staat standaard uit. + ARP. Staat standaard uit. From owner-p4-projects@FreeBSD.ORG Sun Nov 16 22:59:58 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6CC5A106567F; Sun, 16 Nov 2008 22:59:58 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1414C1065675 for ; Sun, 16 Nov 2008 22:59:58 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0419D8FC0A for ; Sun, 16 Nov 2008 22:59:58 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAGMxvPF026233 for ; Sun, 16 Nov 2008 22:59:57 GMT (envelope-from nwhitehorn@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAGMxvlw026231 for perforce@freebsd.org; Sun, 16 Nov 2008 22:59:57 GMT (envelope-from nwhitehorn@freebsd.org) Date: Sun, 16 Nov 2008 22:59:57 GMT Message-Id: <200811162259.mAGMxvlw026231@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to nwhitehorn@freebsd.org using -f From: Nathan Whitehorn To: Perforce Change Reviews Cc: Subject: PERFORCE change 153060 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, 16 Nov 2008 22:59:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=153060 Change 153060 by nwhitehorn@nwhitehorn_trantor on 2008/11/16 22:59:28 Fix interrupt-cells detection on Grackle. Affected files ... .. //depot/projects/ppc-g5/sys/powerpc/powermac/grackle.c#7 edit Differences ... ==== //depot/projects/ppc-g5/sys/powerpc/powermac/grackle.c#7 (text+ko) ==== @@ -255,10 +255,12 @@ ofw_bus_setup_iinfo(node, &sc->sc_pci_iinfo, sizeof(cell_t)); /* We need the number of interrupt cells to read the imap */ - sc->sc_icells = 2; - if (OF_getprop(node, "interrupt-parent", &iparent,sizeof(iparent)) > 0) - OF_getprop(iparent,"#interrupt-cells",&sc->sc_icells, - sizeof(sc->sc_icells)); + if (OF_getprop(node, "interrupt-parent", &iparent,sizeof(iparent)) <= 0) + iparent = node; + + if (OF_getprop(iparent,"#interrupt-cells",&sc->sc_icells, + sizeof(sc->sc_icells)) <= 0); + sc->sc_icells = 1; device_add_child(dev, "pci", device_get_unit(dev)); return (bus_generic_attach(dev)); From owner-p4-projects@FreeBSD.ORG Mon Nov 17 00:29:30 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 88E791065672; Mon, 17 Nov 2008 00:29:30 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4C3151065679 for ; Mon, 17 Nov 2008 00:29:30 +0000 (UTC) (envelope-from peter-gmail@wemm.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3A9378FC1B for ; Mon, 17 Nov 2008 00:29:30 +0000 (UTC) (envelope-from peter-gmail@wemm.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAH0TTwk036567 for ; Mon, 17 Nov 2008 00:29:29 GMT (envelope-from peter-gmail@wemm.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAH0TTYl036565 for perforce@freebsd.org; Mon, 17 Nov 2008 00:29:29 GMT (envelope-from peter-gmail@wemm.org) Date: Mon, 17 Nov 2008 00:29:29 GMT Message-Id: <200811170029.mAH0TTYl036565@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter-gmail@wemm.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 153061 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, 17 Nov 2008 00:29:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=153061 Change 153061 by peter@peter_overcee on 2008/11/17 00:29:25 Add rfork() stubs. On i386, assume ports/devel/linuxthreads. On amd64, fail. We need to be able to predict the stack location in the new child, and the rfork() syscall has nothing to do with that. The only consumer that I know of that uses this is linuxthreads (which is i386-only in ports), and we have to sniff the undocumented register contents before it calls rfork() in clone.S. It is stubbed out right now anyway. Affected files ... .. //depot/projects/valgrind/coregrind/m_syswrap/syswrap-amd64-freebsd.c#9 edit .. //depot/projects/valgrind/coregrind/m_syswrap/syswrap-freebsd.c#32 edit .. //depot/projects/valgrind/coregrind/m_syswrap/syswrap-x86-freebsd.c#15 edit Differences ... ==== //depot/projects/valgrind/coregrind/m_syswrap/syswrap-amd64-freebsd.c#9 (text+ko) ==== @@ -258,6 +258,17 @@ SET_STATUS_from_SysRes(res); } +PRE(sys_rfork) +{ + PRINT("sys_rfork ( %#lx )", ARG1 ); + PRE_REG_READ1(long, "rfork", int, flags); + + VG_(message)(Vg_UserMsg, "rfork() not implemented"); + VG_(unimplemented)("Valgrind does not support rfork()."); + + SET_STATUS_Failure(VKI_ENOSYS); +} + PRE(sys_sigreturn) { ThreadState* tst; ==== //depot/projects/valgrind/coregrind/m_syswrap/syswrap-freebsd.c#32 (text+ko) ==== @@ -3371,7 +3371,7 @@ // BSDXY(__NR_ntp_gettime, sys_ntp_gettime), // 248 // nosys 249 // BSDXY(__NR_minherit, sys_minherit), // 250 -// BSDX_(__NR_rfork, sys_rfork), // 251 + BSDX_(__NR_rfork, sys_rfork), // 251 GENXY(__NR_openbsd_poll, sys_poll), // 252 BSDX_(__NR_issetugid, sys_issetugid), // 253 ==== //depot/projects/valgrind/coregrind/m_syswrap/syswrap-x86-freebsd.c#15 (text+ko) ==== @@ -98,6 +98,219 @@ ); +#if 0 +/* + Perform a rfork system call. rfork is strange because it has + fork()-like return-twice semantics, so it needs special + handling here. + + Upon entry, we have: + + int (fn)(void*) in 0+FSZ(%esp) + void* child_stack in 4+FSZ(%esp) + int flags in 8+FSZ(%esp) + void* arg in 12+FSZ(%esp) + pid_t* child_tid in 16+FSZ(%esp) + pid_t* parent_tid in 20+FSZ(%esp) + void* tls_ptr in 24+FSZ(%esp) + + System call requires: + + int $__NR_clone in %eax + int flags in %ebx + void* child_stack in %ecx + pid_t* parent_tid in %edx + pid_t* child_tid in %edi + void* tls_ptr in %esi + + Returns an Int encoded in the linux-x86 way, not a SysRes. + */ +#define FSZ "4+4+4+4" /* frame size = retaddr+ebx+edi+esi */ +#define __NR_CLONE VG_STRINGIFY(__NR_clone) +#define __NR_EXIT VG_STRINGIFY(__NR_exit) + +extern +Int do_syscall_clone_x86_freebsd ( Word (*fn)(void *), + void* stack, + Int flags, + void* arg, + Int* child_tid, + Int* parent_tid, + vki_modify_ldt_t * ); +asm( +".text\n" +"do_syscall_clone_x86_freebsd:\n" +" push %ebx\n" +" push %edi\n" +" push %esi\n" + + /* set up child stack with function and arg */ +" movl 4+"FSZ"(%esp), %ecx\n" /* syscall arg2: child stack */ +" movl 12+"FSZ"(%esp), %ebx\n" /* fn arg */ +" movl 0+"FSZ"(%esp), %eax\n" /* fn */ +" lea -8(%ecx), %ecx\n" /* make space on stack */ +" movl %ebx, 4(%ecx)\n" /* fn arg */ +" movl %eax, 0(%ecx)\n" /* fn */ + + /* get other args to clone */ +" movl 8+"FSZ"(%esp), %ebx\n" /* syscall arg1: flags */ +" movl 20+"FSZ"(%esp), %edx\n" /* syscall arg3: parent tid * */ +" movl 16+"FSZ"(%esp), %edi\n" /* syscall arg5: child tid * */ +" movl 24+"FSZ"(%esp), %esi\n" /* syscall arg4: tls_ptr * */ +" movl $"__NR_CLONE", %eax\n" +" int $0x80\n" /* clone() */ +" testl %eax, %eax\n" /* child if retval == 0 */ +" jnz 1f\n" + + /* CHILD - call thread function */ +" popl %eax\n" +" call *%eax\n" /* call fn */ + + /* exit with result */ +" movl %eax, %ebx\n" /* arg1: return value from fn */ +" movl $"__NR_EXIT", %eax\n" +" int $0x80\n" + + /* Hm, exit returned */ +" ud2\n" + +"1:\n" /* PARENT or ERROR */ +" pop %esi\n" +" pop %edi\n" +" pop %ebx\n" +" ret\n" +".previous\n" +); + +#undef FSZ +#undef __NR_CLONE +#undef __NR_EXIT + + +// forward declarations +static void setup_child ( ThreadArchState*, ThreadArchState*, Bool ); + +/* + When a client clones, we need to keep track of the new thread. This means: + 1. allocate a ThreadId+ThreadState+stack for the the thread + + 2. initialize the thread's new VCPU state + + 3. create the thread using the same args as the client requested, + but using the scheduler entrypoint for EIP, and a separate stack + for ESP. + */ +static SysRes do_rfork ( ThreadId ptid, + UInt flags) +{ + static const Bool debug = False; + + Addr esp; + ThreadId ctid = VG_(alloc_ThreadState)(); + ThreadState* ptst = VG_(get_ThreadState)(ptid); + ThreadState* ctst = VG_(get_ThreadState)(ctid); + UWord* stack; + NSegment const* seg; + SysRes res; + Int eax; + vki_sigset_t blockall, savedmask; + + VG_(sigfillset)(&blockall); + + vg_assert(VG_(is_running_thread)(ptid)); + vg_assert(VG_(is_valid_tid)(ctid)); + + stack = (UWord*)ML_(allocstack)(ctid); + if (stack == NULL) { + res = VG_(mk_SysRes_Error)( VKI_ENOMEM ); + goto out; + } + + /* Copy register state + + Both parent and child return to the same place, and the code + following the clone syscall works out which is which, so we + don't need to worry about it. + + The parent gets the child's new tid returned from clone, but the + child gets 0. + + If the clone call specifies a NULL esp for the new thread, then + it actually gets a copy of the parent's esp. + */ + /* Note: the clone call done by the Quadrics Elan3 driver specifies + clone flags of 0xF00, and it seems to rely on the assumption + that the child inherits a copy of the parent's GDT. + setup_child takes care of setting that up. */ + setup_child( &ctst->arch, &ptst->arch, True ); + + /* Make sys_clone appear to have returned Success(0) in the + child. */ + ctst->arch.vex.guest_EAX = 0; + + /* Assume linuxthreads port storing its intended stack in %esi */ + esp = ctst->arch.vex.guest_ESI; + + ctst->os_state.parent = ptid; + + /* inherit signal mask */ + ctst->sig_mask = ptst->sig_mask; + ctst->tmp_sig_mask = ptst->sig_mask; + + /* We don't really know where the client stack is, because its + allocated by the client. The best we can do is look at the + memory mappings and try to derive some useful information. We + assume that esp starts near its highest possible value, and can + only go down to the start of the mmaped segment. */ + seg = VG_(am_find_nsegment)((Addr)esp); + if (seg && seg->kind != SkResvn) { + ctst->client_stack_highest_word = (Addr)VG_PGROUNDUP(esp); + ctst->client_stack_szB = ctst->client_stack_highest_word - seg->start; + + VG_(register_stack)(seg->start, ctst->client_stack_highest_word); + + if (debug) + VG_(printf)("tid %d: guessed client stack range %#lx-%#lx\n", + ctid, seg->start, VG_PGROUNDUP(esp)); + } else { + VG_(message)(Vg_UserMsg, "!? New thread %d starts with ESP(%#lx) unmapped\n", + ctid, esp); + ctst->client_stack_szB = 0; + } + + /* Assume the clone will succeed, and tell any tool that wants to + know that this thread has come into existence. We cannot defer + it beyond this point because sys_set_thread_area, just below, + causes tCheck to assert by making references to the new ThreadId + if we don't state the new thread exists prior to that point. + If the clone fails, we'll send out a ll_exit notification for it + at the out: label below, to clean up. */ + VG_TRACK ( pre_thread_ll_create, ptid, ctid ); + + /* start the thread with everything blocked */ + VG_(sigprocmask)(VKI_SIG_SETMASK, &blockall, &savedmask); + + /* Create the new thread */ + /* XXX need to see what happens with tids etc with rfork */ + eax = do_syscall_clone_x86_freebsd( + ML_(start_thread_NORETURN), stack, flags /*, &VG_(threads)[ctid], NULL*/ ); + res = VG_(mk_SysRes_x86_freebsd)( eax ); /* XXX edx returns too! */ + + VG_(sigprocmask)(VKI_SIG_SETMASK, &savedmask, NULL); + + out: + if (res.isError) { + /* clone failed */ + VG_(cleanup_thread)(&ctst->arch); + ctst->status = VgTs_Empty; + /* oops. Better tell the tool the thread exited in a hurry :-) */ + VG_TRACK( pre_thread_ll_exit, ctid ); + } + + return res; +} +#endif + /* Translate a struct modify_ldt_ldt_s to a VexGuestX86SegDescr */ static @@ -249,6 +462,40 @@ } +#if 0 +static void setup_child ( /*OUT*/ ThreadArchState *child, + /*IN*/ ThreadArchState *parent, + Bool inherit_parents_GDT ) +{ + /* We inherit our parent's guest state. */ + child->vex = parent->vex; + child->vex_shadow1 = parent->vex_shadow1; + child->vex_shadow2 = parent->vex_shadow2; + + /* We inherit our parent's LDT. */ + if (parent->vex.guest_LDT == (HWord)NULL) { + /* We hope this is the common case. */ + child->vex.guest_LDT = (HWord)NULL; + } else { + /* No luck .. we have to take a copy of the parent's. */ + child->vex.guest_LDT = (HWord)alloc_zeroed_x86_LDT(); + copy_LDT_from_to( (VexGuestX86SegDescr*)parent->vex.guest_LDT, + (VexGuestX86SegDescr*)child->vex.guest_LDT ); + } + + /* Either we start with an empty GDT (the usual case) or inherit a + copy of our parents' one (Quadrics Elan3 driver -style clone + only). */ + child->vex.guest_GDT = (HWord)NULL; + + if (inherit_parents_GDT && parent->vex.guest_GDT != (HWord)NULL) { + child->vex.guest_GDT = (HWord)alloc_zeroed_x86_GDT(); + copy_GDT_from_to( (VexGuestX86SegDescr*)parent->vex.guest_GDT, + (VexGuestX86SegDescr*)child->vex.guest_GDT ); + } +} +#endif + /* --------------------------------------------------------------------- PRE/POST wrappers for x86/Linux-specific syscalls ------------------------------------------------------------------ */ @@ -394,6 +641,34 @@ SET_STATUS_from_SysRes(res); } + +PRE(sys_rfork) +{ + PRINT("sys_rfork ( %lx )",ARG1); + PRE_REG_READ1(int, "rfork", + unsigned int, flags); + +#if 0 + cloneflags = ARG1; + + if (!ML_(client_signal_OK)(ARG1 & VKI_CSIGNAL)) { + SET_STATUS_Failure( VKI_EINVAL ); + return; + } + + SET_STATUS_from_SysRes( do_clone(tid, ARG1)); + + if (SUCCESS) { + *flags |= SfYieldAfter; + } +#else + VG_(message)(Vg_UserMsg, "No rfork for you!"); + VG_(unimplemented) + ("Valgrind does not support rfork() yet."); + SET_STATUS_Failure( VKI_ENOSYS ); +#endif +} + PRE(sys_sigreturn) { /* See comments on PRE(sys_rt_sigreturn) in syswrap-amd64-linux.c for From owner-p4-projects@FreeBSD.ORG Mon Nov 17 01:42:02 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C9D2A1065674; Mon, 17 Nov 2008 01:42:02 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8F1691065670; Mon, 17 Nov 2008 01:42:02 +0000 (UTC) (envelope-from haro@kgt.co.jp) Received: from mail02.kgt.co.jp (dmz02.kgt.co.jp [210.141.246.82]) by mx1.freebsd.org (Postfix) with ESMTP id 5F8E78FC16; Mon, 17 Nov 2008 01:42:02 +0000 (UTC) (envelope-from haro@kgt.co.jp) Received: from navgw.tt.kgt.co.jp (unknown [210.141.246.71]) by mail02.kgt.co.jp (Postfix) with ESMTP id 2B61A3C43F8E; Mon, 17 Nov 2008 10:30:39 +0900 (JST) Received: from localhost (posh.tt.kgt.co.jp [192.168.15.51]) by navgw.tt.kgt.co.jp (Postfix) with ESMTP id E85E047712; Mon, 17 Nov 2008 10:30:38 +0900 (JST) Date: Mon, 17 Nov 2008 10:30:38 +0900 (JST) Message-Id: <20081117.103038.36764854.haro@kgt.co.jp> To: nwhitehorn@FreeBSD.org From: haro@kgt.co.jp In-Reply-To: <200811162259.mAGMxvlw026231@repoman.freebsd.org> References: <200811162259.mAGMxvlw026231@repoman.freebsd.org> X-Mailer: Mew version 4.2 on Emacs 21.4 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: perforce@freebsd.org Subject: Re: PERFORCE change 153060 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, 17 Nov 2008 01:42:03 -0000 From: Nathan Whitehorn Date: Sun, 16 Nov 2008 22:59:57 GMT ::http://perforce.freebsd.org/chv.cgi?CH=153060 :: ::Change 153060 by nwhitehorn@nwhitehorn_trantor on 2008/11/16 22:59:28 :: :: Fix interrupt-cells detection on Grackle. :: ::Affected files ... :: ::.. //depot/projects/ppc-g5/sys/powerpc/powermac/grackle.c#7 edit :: ::Differences ... :: ::==== //depot/projects/ppc-g5/sys/powerpc/powermac/grackle.c#7 (text+ko) ==== :: ::@@ -255,10 +255,12 @@ :: ofw_bus_setup_iinfo(node, &sc->sc_pci_iinfo, sizeof(cell_t)); :: :: /* We need the number of interrupt cells to read the imap */ ::- sc->sc_icells = 2; ::- if (OF_getprop(node, "interrupt-parent", &iparent,sizeof(iparent)) > 0) ::- OF_getprop(iparent,"#interrupt-cells",&sc->sc_icells, ::- sizeof(sc->sc_icells)); ::+ if (OF_getprop(node, "interrupt-parent", &iparent,sizeof(iparent)) <= 0) ::+ iparent = node; ::+ ::+ if (OF_getprop(iparent,"#interrupt-cells",&sc->sc_icells, ::+ sizeof(sc->sc_icells)) <= 0); ::+ sc->sc_icells = 1; Hello Nathan, A ";" after "if" statement does not seem correct to me. Hope this helps, Haro =----------------------------------------------------------------------- _ _ Munehiro (haro) Matsuda -|- /_\ |_|_| KGT Inc. /|\ |_| |_|_| From owner-p4-projects@FreeBSD.ORG Mon Nov 17 01:51:54 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F0E8C106567D; Mon, 17 Nov 2008 01:51:53 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B4AC2106564A for ; Mon, 17 Nov 2008 01:51:53 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A27E78FC0A for ; Mon, 17 Nov 2008 01:51:53 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAH1prnt053330 for ; Mon, 17 Nov 2008 01:51:53 GMT (envelope-from nwhitehorn@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAH1prIE053328 for perforce@freebsd.org; Mon, 17 Nov 2008 01:51:53 GMT (envelope-from nwhitehorn@freebsd.org) Date: Mon, 17 Nov 2008 01:51:53 GMT Message-Id: <200811170151.mAH1prIE053328@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to nwhitehorn@freebsd.org using -f From: Nathan Whitehorn To: Perforce Change Reviews Cc: Subject: PERFORCE change 153064 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, 17 Nov 2008 01:51:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=153064 Change 153064 by nwhitehorn@nwhitehorn_trantor on 2008/11/17 01:51:19 Adapt sparc64 to the new pluggable Open Firmware client layer. This involved changes to machdep.c as well as renaming the sparc64 OF entry point from openfirmware to ofw_entry to prevent a naming conflict. This commit also modifies the MI KOBJ routines to provide better support for running very, very early in the boot process. Apparently, sparc64 requires the system to be much further booted than PowerPC to enable mutexes (interrupt handlers and PMAP enabled), which are required by KOBJ. To get there, however, requires Open Firmware, and thus KOBJ. Expand the spirit of the kobj_machdep_init() call by making KOBJ not try to lock or assert its global mutex if it has not been initialized. This early in the boot process, there will be no races, so this should be fine. Tested on: Sun Ultra 5 Affected files ... .. //depot/projects/ppc-g5/sys/conf/files.sparc64#4 edit .. //depot/projects/ppc-g5/sys/dev/ofw/openpromio.c#2 edit .. //depot/projects/ppc-g5/sys/kern/subr_kobj.c#2 edit .. //depot/projects/ppc-g5/sys/sparc64/include/ofw_machdep.h#2 edit .. //depot/projects/ppc-g5/sys/sparc64/sparc64/machdep.c#3 edit .. //depot/projects/ppc-g5/sys/sparc64/sparc64/mp_machdep.c#4 edit .. //depot/projects/ppc-g5/sys/sparc64/sparc64/ofw_machdep.c#3 edit .. //depot/projects/ppc-g5/sys/sparc64/sparc64/support.S#3 edit .. //depot/projects/ppc-g5/sys/sparc64/sparc64/trap.c#3 edit .. //depot/projects/ppc-g5/sys/sparc64/sparc64/vm_machdep.c#2 edit Differences ... ==== //depot/projects/ppc-g5/sys/conf/files.sparc64#4 (text+ko) ==== @@ -52,8 +52,10 @@ dev/le/if_le_lebuffer.c optional le sbus dev/le/if_le_ledma.c optional le sbus dev/le/lebuffer_sbus.c optional le sbus +dev/ofw/ofw_if.m standard dev/ofw/ofw_bus_if.m standard dev/ofw/ofw_bus_subr.c standard +dev/ofw/ofw_standard.c standard dev/ofw/ofw_console.c optional ofw_console dev/ofw/openfirm.c standard dev/ofw/openfirmio.c standard ==== //depot/projects/ppc-g5/sys/dev/ofw/openpromio.c#2 (text+ko) ==== @@ -174,7 +174,7 @@ error = OF_getprop(node, prop, buf, proplen); break; case OPROMNXTPROP: - error = OF_nextprop(node, prop, buf); + error = OF_nextprop(node, prop, buf, OPROMMAXPARAM); proplen = strlen(buf); break; } ==== //depot/projects/ppc-g5/sys/kern/subr_kobj.c#2 (text+ko) ==== @@ -60,6 +60,10 @@ static int kobj_mutex_inited; static int kobj_next_id = 1; +#define KOBJ_LOCK() if (kobj_mutex_inited) mtx_lock(&kobj_mtx); +#define KOBJ_UNLOCK() if (kobj_mutex_inited) mtx_unlock(&kobj_mtx); +#define KOBJ_ASSERT(what) if (kobj_mutex_inited) mtx_assert(&kobj_mtx,what); + SYSCTL_UINT(_kern, OID_AUTO, kobj_methodcount, CTLFLAG_RD, &kobj_next_id, 0, ""); @@ -99,8 +103,8 @@ static void kobj_register_method(struct kobjop_desc *desc) { + KOBJ_ASSERT(MA_OWNED); - mtx_assert(&kobj_mtx, MA_OWNED); if (desc->id == 0) { desc->id = kobj_next_id++; } @@ -117,7 +121,7 @@ kobj_method_t *m; int i; - mtx_assert(&kobj_mtx, MA_OWNED); + KOBJ_ASSERT(MA_OWNED); /* * Don't do anything if we are already compiled. @@ -145,7 +149,7 @@ { kobj_ops_t ops; - mtx_assert(&kobj_mtx, MA_NOTOWNED); + KOBJ_ASSERT(MA_NOTOWNED); /* * Allocate space for the compiled ops table. @@ -154,7 +158,7 @@ if (!ops) panic("kobj_compile_methods: out of memory"); - mtx_lock(&kobj_mtx); + KOBJ_LOCK(); /* * We may have lost a race for kobj_class_compile here - check @@ -162,28 +166,30 @@ * class. */ if (cls->ops) { - mtx_unlock(&kobj_mtx); + KOBJ_UNLOCK(); free(ops, M_KOBJ); return; } kobj_class_compile_common(cls, ops); - mtx_unlock(&kobj_mtx); + KOBJ_UNLOCK(); } void kobj_class_compile_static(kobj_class_t cls, kobj_ops_t ops) { - mtx_assert(&kobj_mtx, MA_NOTOWNED); + KOBJ_ASSERT(MA_NOTOWNED); /* * Increment refs to make sure that the ops table is not freed. */ - mtx_lock(&kobj_mtx); + KOBJ_LOCK(); + cls->refs++; kobj_class_compile_common(cls, ops); - mtx_unlock(&kobj_mtx); + + KOBJ_UNLOCK(); } static kobj_method_t* @@ -254,8 +260,8 @@ kobj_method_t *m; void* ops = 0; - mtx_assert(&kobj_mtx, MA_NOTOWNED); - mtx_lock(&kobj_mtx); + KOBJ_ASSERT(MA_NOTOWNED); + KOBJ_LOCK(); /* * Protect against a race between kobj_create and @@ -275,7 +281,7 @@ cls->ops = 0; } - mtx_unlock(&kobj_mtx); + KOBJ_UNLOCK(); if (ops) free(ops, M_KOBJ); @@ -302,9 +308,9 @@ void kobj_init(kobj_t obj, kobj_class_t cls) { - mtx_assert(&kobj_mtx, MA_NOTOWNED); + KOBJ_ASSERT(MA_NOTOWNED); retry: - mtx_lock(&kobj_mtx); + KOBJ_LOCK(); /* * Consider compiling the class' method table. @@ -315,7 +321,7 @@ * because of the call to malloc - we drop the lock * and re-try. */ - mtx_unlock(&kobj_mtx); + KOBJ_UNLOCK(); kobj_class_compile(cls); goto retry; } @@ -323,7 +329,7 @@ obj->ops = cls->ops; cls->refs++; - mtx_unlock(&kobj_mtx); + KOBJ_UNLOCK(); } void @@ -337,11 +343,11 @@ * after its last instance is deleted. As an optimisation, we * should defer this for a short while to avoid thrashing. */ - mtx_assert(&kobj_mtx, MA_NOTOWNED); - mtx_lock(&kobj_mtx); + KOBJ_ASSERT(MA_NOTOWNED); + KOBJ_LOCK(); cls->refs--; refs = cls->refs; - mtx_unlock(&kobj_mtx); + KOBJ_UNLOCK(); if (!refs) kobj_class_free(cls); ==== //depot/projects/ppc-g5/sys/sparc64/include/ofw_machdep.h#2 (text+ko) ==== @@ -29,10 +29,15 @@ #define _MACHINE_OFW_MACHDEP_H_ #include +#include +#include + +typedef uint64_t cell_t; int OF_decode_addr(phandle_t, int, int *, bus_addr_t *); void OF_getetheraddr(device_t, u_char *); void cpu_shutdown(void *); -void openfirmware_exit(void *); +int ofw_entry(void *); +void ofw_exit(void *); #endif /* _MACHINE_OFW_MACHDEP_H_ */ ==== //depot/projects/ppc-g5/sys/sparc64/sparc64/machdep.c#3 (text+ko) ==== @@ -275,10 +275,9 @@ */ tick_stop(); - /* - * Initialize Open Firmware (needed for console). - */ - OF_init(vec); + /* Set up Open Firmware entry points */ + ofw_tba = rdpr(tba); + ofw_vec = (u_long)vec; /* * Parse metadata if present and fetch parameters. Must be before the @@ -301,6 +300,14 @@ init_param1(); /* + * Initialize Open Firmware (needed for console). + */ + OF_install(OFW_STD_DIRECT, 0); + OF_init(ofw_entry); + + //OF_printf("Real Open Firmware is working\n"); + + /* * Prime our per-CPU data page for use. Note, we are using it for * our stack, so don't pass the real size (PAGE_SIZE) to pcpu_init * or it'll zero it out from under us. @@ -463,6 +470,7 @@ * Finish pmap initialization now that we're ready for mutexes. */ PMAP_LOCK_INIT(kernel_pmap); + kobj_machdep_init(); OF_getprop(root, "name", sparc64_model, sizeof(sparc64_model) - 1); @@ -475,14 +483,6 @@ } void -set_openfirm_callback(ofw_vec_t *vec) -{ - - ofw_tba = rdpr(tba); - ofw_vec = (u_long)vec; -} - -void sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask) { struct trapframe *tf; @@ -719,7 +719,7 @@ #ifdef SMP cpu_mp_shutdown(); #endif - openfirmware_exit(args); + ofw_exit(args); } /* Get current clock frequency for the given CPU ID. */ ==== //depot/projects/ppc-g5/sys/sparc64/sparc64/mp_machdep.c#4 (text+ko) ==== @@ -221,7 +221,7 @@ args.cpu = cpu; args.func = (cell_t)func; args.arg = (cell_t)arg; - openfirmware(&args); + ofw_entry(&args); } /* @@ -238,7 +238,7 @@ (cell_t)SUNW_STOPSELF, }; - openfirmware_exit(&args); + ofw_exit(&args); panic("%s: failed.", __func__); } ==== //depot/projects/ppc-g5/sys/sparc64/sparc64/ofw_machdep.c#3 (text+ko) ==== @@ -270,13 +270,3 @@ return (ENXIO); } -/* - * Map a pointer from kernel address space to OFW address space. Since OFW - * lives in the same address space, do nothing. - */ - -cell_t -openfirm_mapptr(const void *arg) -{ - return ((cell_t)arg); -} ==== //depot/projects/ppc-g5/sys/sparc64/sparc64/support.S#3 (text+ko) ==== @@ -749,9 +749,9 @@ END(setjmp) /* - * void openfirmware(cell_t args[]) + * void ofw_entry(cell_t args[]) */ -ENTRY(openfirmware) +ENTRY(ofw_entry) save %sp, -CCFSZ, %sp SET(ofw_vec, %l7, %l6) ldx [%l6], %l6 @@ -762,12 +762,12 @@ wrpr %l7, 0, %pil ret restore %o0, %g0, %o0 -END(openfirmware) +END(ofw_entry) /* - * void openfirmware_exit(cell_t args[]) + * void ofw_exit(cell_t args[]) */ -ENTRY(openfirmware_exit) +ENTRY(ofw_exit) save %sp, -CCFSZ, %sp flushw wrpr %g0, PIL_TICK, %pil @@ -787,7 +787,7 @@ call %l6 mov %i0, %o0 ! never to return -END(openfirmware_exit) +END(ofw_exit) #ifdef GPROF ==== //depot/projects/ppc-g5/sys/sparc64/sparc64/trap.c#3 (text+ko) ==== @@ -71,6 +71,7 @@ #include #include +#include #include #include @@ -248,7 +249,7 @@ }; args.tba_addr = (cell_t)tba_addr; - openfirmware(&args); + ofw_entry(&args); } void ==== //depot/projects/ppc-g5/sys/sparc64/sparc64/vm_machdep.c#2 (text+ko) ==== @@ -334,7 +334,7 @@ bspec[sizeof(bspec) - 1] = '\0'; } - openfirmware_exit(&args); + ofw_exit(&args); } /* From owner-p4-projects@FreeBSD.ORG Mon Nov 17 02:13:15 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C147F1065674; Mon, 17 Nov 2008 02:13:15 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8452F106564A for ; Mon, 17 Nov 2008 02:13:15 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5A71E8FC12 for ; Mon, 17 Nov 2008 02:13:15 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAH2DFVU055898 for ; Mon, 17 Nov 2008 02:13:15 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAH2DFmm055896 for perforce@freebsd.org; Mon, 17 Nov 2008 02:13:15 GMT (envelope-from jb@freebsd.org) Date: Mon, 17 Nov 2008 02:13:15 GMT Message-Id: <200811170213.mAH2DFmm055896@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 153065 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, 17 Nov 2008 02:13:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=153065 Change 153065 by jb@jb_freebsd3 on 2008/11/17 02:12:38 Turn off CTF by default. Affected files ... .. //depot/projects/dtrace6/src/share/mk/sys.mk#5 edit Differences ... ==== //depot/projects/dtrace6/src/share/mk/sys.mk#5 (text+ko) ==== @@ -38,6 +38,12 @@ CFLAGS ?= -O2 -fno-strict-aliasing -pipe .endif +# Turn CTF conversion off by default for now. This default could be +# changed later if DTrace becomes popular. +.if !defined(WITH_CTF) +NO_CTF = 1 +.endif + .if ${MACHINE_ARCH} != "amd64" && ${MACHINE_ARCH} != "i386" && ${MACHINE_ARCH} != "sparc64" NO_CTF= 1 .endif From owner-p4-projects@FreeBSD.ORG Mon Nov 17 02:13:16 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9E1E6106571E; Mon, 17 Nov 2008 02:13:16 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A74211065670 for ; Mon, 17 Nov 2008 02:13:15 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7D8498FC13 for ; Mon, 17 Nov 2008 02:13:15 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAH2DF4q055903 for ; Mon, 17 Nov 2008 02:13:15 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAH2DF60055901 for perforce@freebsd.org; Mon, 17 Nov 2008 02:13:15 GMT (envelope-from jb@freebsd.org) Date: Mon, 17 Nov 2008 02:13:15 GMT Message-Id: <200811170213.mAH2DF60055901@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 153066 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, 17 Nov 2008 02:13:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=153066 Change 153066 by jb@jb_freebsd3 on 2008/11/17 02:13:08 Add the missing ctfmerge for the kernel object. Affected files ... .. //depot/projects/dtrace6/src/sys/conf/kern.post.mk#2 edit Differences ... ==== //depot/projects/dtrace6/src/sys/conf/kern.post.mk#2 (text+ko) ==== @@ -83,6 +83,9 @@ @rm -f ${.TARGET} @echo linking ${.TARGET} ${SYSTEM_LD} +.if defined(CTFMERGE) + ${SYSTEM_CTFMERGE} +.endif .if !defined(DEBUG) ${OBJCOPY} --strip-debug ${.TARGET} .endif From owner-p4-projects@FreeBSD.ORG Mon Nov 17 02:24:27 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 76CFB1065675; Mon, 17 Nov 2008 02:24:27 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 39B3E1065672 for ; Mon, 17 Nov 2008 02:24:27 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 26BAE8FC08 for ; Mon, 17 Nov 2008 02:24:27 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAH2OQmK057692 for ; Mon, 17 Nov 2008 02:24:26 GMT (envelope-from nwhitehorn@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAH2OQXe057690 for perforce@freebsd.org; Mon, 17 Nov 2008 02:24:26 GMT (envelope-from nwhitehorn@freebsd.org) Date: Mon, 17 Nov 2008 02:24:26 GMT Message-Id: <200811170224.mAH2OQXe057690@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to nwhitehorn@freebsd.org using -f From: Nathan Whitehorn To: Perforce Change Reviews Cc: Subject: PERFORCE change 153068 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, 17 Nov 2008 02:24:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=153068 Change 153068 by nwhitehorn@nwhitehorn_trantor on 2008/11/17 02:23:57 Very small changes in very many files -- move ofw_bus.* from sparc64 into dev/ofw/ofw_bus_subr*. Both PowerPC and sparc64 now use this code, which works very nicely. This finishes the elimination of the ofw_pci_fixup() hack on PPC. Tested on: Sun Ultra 5, iBook G4, Powermac G3 Affected files ... .. //depot/projects/ppc-g5/sys/conf/files.powerpc#10 edit .. //depot/projects/ppc-g5/sys/conf/files.sparc64#5 edit .. //depot/projects/ppc-g5/sys/dev/ofw/ofw_bus_subr.c#2 edit .. //depot/projects/ppc-g5/sys/dev/ofw/ofw_bus_subr.h#2 edit .. //depot/projects/ppc-g5/sys/dev/ofw/ofw_imap.c#3 delete .. //depot/projects/ppc-g5/sys/dev/ofw/ofw_imap.h#2 delete .. //depot/projects/ppc-g5/sys/dev/ofw/openfirm.h#4 edit .. //depot/projects/ppc-g5/sys/powerpc/ofw/ofw_isa.c#2 edit .. //depot/projects/ppc-g5/sys/powerpc/ofw/ofw_pcib_pci.c#5 edit .. //depot/projects/ppc-g5/sys/powerpc/ofw/ofw_pcibus.c#4 edit .. //depot/projects/ppc-g5/sys/powerpc/powermac/cpcht.c#10 edit .. //depot/projects/ppc-g5/sys/powerpc/powermac/grackle.c#8 edit .. //depot/projects/ppc-g5/sys/powerpc/powermac/uninorth.c#8 edit .. //depot/projects/ppc-g5/sys/sparc64/ebus/ebus.c#2 edit .. //depot/projects/ppc-g5/sys/sparc64/include/ofw_bus.h#2 delete .. //depot/projects/ppc-g5/sys/sparc64/isa/ofw_isa.c#2 edit .. //depot/projects/ppc-g5/sys/sparc64/pci/apb.c#2 edit .. //depot/projects/ppc-g5/sys/sparc64/pci/ofw_pci.h#2 edit .. //depot/projects/ppc-g5/sys/sparc64/pci/ofw_pcib.c#2 edit .. //depot/projects/ppc-g5/sys/sparc64/pci/ofw_pcib_subr.c#2 edit .. //depot/projects/ppc-g5/sys/sparc64/pci/ofw_pcibus.c#2 edit .. //depot/projects/ppc-g5/sys/sparc64/pci/psycho.c#3 edit .. //depot/projects/ppc-g5/sys/sparc64/pci/schizo.c#3 edit .. //depot/projects/ppc-g5/sys/sparc64/sparc64/ofw_bus.c#2 delete .. //depot/projects/ppc-g5/sys/sparc64/sparc64/ofw_machdep.c#4 edit Differences ... ==== //depot/projects/ppc-g5/sys/conf/files.powerpc#10 (text+ko) ==== @@ -44,7 +44,6 @@ dev/ofw/ofw_bus_subr.c optional aim dev/ofw/ofw_console.c optional aim dev/ofw/ofw_disk.c optional ofwd aim -dev/ofw/ofw_imap.c optional aim dev/ofw/ofw_standard.c optional aim dev/powermac_nvram/powermac_nvram.c optional powermac_nvram powermac dev/quicc/quicc_bfe_ocp.c optional quicc mpc85xx ==== //depot/projects/ppc-g5/sys/conf/files.sparc64#5 (text+ko) ==== @@ -123,7 +123,6 @@ sparc64/sparc64/mp_locore.S optional smp sparc64/sparc64/mp_machdep.c optional smp sparc64/sparc64/nexus.c standard -sparc64/sparc64/ofw_bus.c standard sparc64/sparc64/ofw_machdep.c standard sparc64/sparc64/pmap.c standard sparc64/sparc64/prof_machdep.c optional profiling-routine ==== //depot/projects/ppc-g5/sys/dev/ofw/ofw_bus_subr.c#2 (text+ko) ==== @@ -1,4 +1,6 @@ /*- + * Copyright (C) 1996 Wolfgang Solfrank. + * Copyright (C) 1996 TooLs GmbH. * Copyright (c) 2005 Marius Strobl * All rights reserved. * @@ -126,3 +128,135 @@ return (NULL); return (obd->obd_type); } + +static int +ofw_bus_searchprop(phandle_t node, char *propname, void *buf, int buflen) +{ + int rv; + + for (; node != 0; node = OF_parent(node)) { + if ((rv = OF_getprop(node, propname, buf, buflen)) != -1) + return (rv); + } + return (-1); +} + +void +ofw_bus_setup_iinfo(phandle_t node, struct ofw_bus_iinfo *ii, int intrsz) +{ + pcell_t addrc; + int msksz; + + if (OF_getprop(node, "#address-cells", &addrc, sizeof(addrc)) == -1) + addrc = 2; + ii->opi_addrc = addrc * sizeof(pcell_t); + + ii->opi_imapsz = OF_getprop_alloc(node, "interrupt-map", 1, + (void **)&ii->opi_imap); + if (ii->opi_imapsz > 0) { + msksz = OF_getprop_alloc(node, "interrupt-map-mask", 1, + (void **)&ii->opi_imapmsk); + /* + * Failure to get the mask is ignored; a full mask is used then. + * Barf on bad mask sizes, however. + */ + if (msksz != -1 && msksz != ii->opi_addrc + intrsz) { + panic("ofw_bus_setup_iinfo: bad interrupt-map-mask " + "property!"); + } + } + +} + +int +ofw_bus_lookup_imap(phandle_t node, struct ofw_bus_iinfo *ii, void *reg, + int regsz, void *pintr, int pintrsz, void *mintr, int mintrsz, + void *maskbuf) +{ + int rv; + + if (ii->opi_imapsz <= 0) + return (0); + KASSERT(regsz >= ii->opi_addrc, + ("ofw_bus_lookup_imap: register size too small: %d < %d", + regsz, ii->opi_addrc)); + rv = OF_getprop(node, "reg", reg, regsz); + if (rv < regsz) + panic("ofw_bus_lookup_imap: could not get reg property"); + return (ofw_bus_search_intrmap(pintr, pintrsz, reg, ii->opi_addrc, + ii->opi_imap, ii->opi_imapsz, ii->opi_imapmsk, maskbuf, mintr, + mintrsz)); +} + +/* + * Map an interrupt using the firmware reg, interrupt-map and + * interrupt-map-mask properties. + * The interrupt property to be mapped must be of size intrsz, and pointed to + * by intr. The regs property of the node for which the mapping is done must + * be passed as regs. This property is an array of register specifications; + * the size of the address part of such a specification must be passed as + * physsz. Only the first element of the property is used. + * imap and imapsz hold the interrupt mask and it's size. + * imapmsk is a pointer to the interrupt-map-mask property, which must have + * a size of physsz + intrsz; it may be NULL, in which case a full mask is + * assumed. + * maskbuf must point to a buffer of length physsz + intrsz. + * The interrupt is returned in result, which must point to a buffer of length + * rintrsz (which gives the expected size of the mapped interrupt). + * Returns 1 if a mapping was found, 0 otherwise. + */ +int +ofw_bus_search_intrmap(void *intr, int intrsz, void *regs, int physsz, + void *imap, int imapsz, void *imapmsk, void *maskbuf, void *result, + int rintrsz) +{ + phandle_t parent; + u_int8_t *ref = maskbuf; + u_int8_t *uiintr = intr; + u_int8_t *uiregs = regs; + u_int8_t *uiimapmsk = imapmsk; + u_int8_t *mptr; + pcell_t pintrsz; + int i, rsz, tsz; + + rsz = -1; + if (imapmsk != NULL) { + for (i = 0; i < physsz; i++) + ref[i] = uiregs[i] & uiimapmsk[i]; + for (i = 0; i < intrsz; i++) + ref[physsz + i] = uiintr[i] & uiimapmsk[physsz + i]; + } else { + bcopy(regs, ref, physsz); + bcopy(intr, ref + physsz, intrsz); + } + + mptr = imap; + i = imapsz; + tsz = physsz + intrsz + sizeof(phandle_t) + rintrsz; + while (i > 0) { + KASSERT(i >= tsz, ("ofw_bus_search_intrmap: truncated map")); + bcopy(mptr + physsz + intrsz, &parent, sizeof(parent)); + if (ofw_bus_searchprop(parent, "#interrupt-cells", + &pintrsz, sizeof(pintrsz)) == -1) + pintrsz = 1; /* default */ + pintrsz *= sizeof(pcell_t); + if (pintrsz != rintrsz) + panic("ofw_bus_search_intrmap: expected interrupt cell " + "size incorrect: %d > %d", rintrsz, pintrsz); + + /* + * XXX: Apple hardware used a second cell to set information + * on the interrupt trigger type. This information should + * be used. + */ + + if (bcmp(ref, mptr, physsz + intrsz) == 0) { + bcopy(mptr + physsz + intrsz + sizeof(parent), + result, rintrsz); + return (1); + } + mptr += tsz; + i -= tsz; + } + return (0); +} ==== //depot/projects/ppc-g5/sys/dev/ofw/ofw_bus_subr.h#2 (text+ko) ==== @@ -37,9 +37,27 @@ #include "ofw_bus_if.h" +#define ORIP_NOINT -1 +#define ORIR_NOTFOUND 0xffffffff + +struct ofw_bus_iinfo { + u_int8_t *opi_imap; + u_int8_t *opi_imapmsk; + int opi_imapsz; + pcell_t opi_addrc; +}; + int ofw_bus_gen_setup_devinfo(struct ofw_bus_devinfo *, phandle_t); void ofw_bus_gen_destroy_devinfo(struct ofw_bus_devinfo *); +/* Routines for processing firmware interrupt maps */ + +void ofw_bus_setup_iinfo(phandle_t, struct ofw_bus_iinfo *, int); +int ofw_bus_lookup_imap(phandle_t, struct ofw_bus_iinfo *, void *, int, + void *, int, void *, int, void *); +int ofw_bus_search_intrmap(void *, int, void *, int, void *, int, void *, + void *, void *, int); + ofw_bus_get_compat_t ofw_bus_gen_get_compat; ofw_bus_get_model_t ofw_bus_gen_get_model; ofw_bus_get_name_t ofw_bus_gen_get_name; ==== //depot/projects/ppc-g5/sys/dev/ofw/openfirm.h#4 (text+ko) ==== @@ -64,8 +64,9 @@ * Prototypes for Open Firmware Interface Routines */ -typedef unsigned int ihandle_t; -typedef unsigned int phandle_t; +typedef uint32_t ihandle_t; +typedef uint32_t phandle_t; +typedef uint32_t pcell_t; #ifdef _KERNEL #include ==== //depot/projects/ppc-g5/sys/powerpc/ofw/ofw_isa.c#2 (text+ko) ==== @@ -42,9 +42,9 @@ #include #include -#include #include #include +#include #include ==== //depot/projects/ppc-g5/sys/powerpc/ofw/ofw_pcib_pci.c#5 (text+ko) ==== @@ -35,8 +35,8 @@ #include #include -#include #include +#include #include #include ==== //depot/projects/ppc-g5/sys/powerpc/ofw/ofw_pcibus.c#4 (text+ko) ==== @@ -40,7 +40,6 @@ #include #include #include -#include #include #include ==== //depot/projects/ppc-g5/sys/powerpc/powermac/cpcht.c#10 (text+ko) ==== @@ -46,7 +46,6 @@ #include #include -#include #include #include ==== //depot/projects/ppc-g5/sys/powerpc/powermac/grackle.c#8 (text+ko) ==== @@ -37,7 +37,7 @@ #include #include #include -#include +#include #include #include ==== //depot/projects/ppc-g5/sys/powerpc/powermac/uninorth.c#8 (text+ko) ==== @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include #include ==== //depot/projects/ppc-g5/sys/sparc64/ebus/ebus.c#2 (text+ko) ==== @@ -51,7 +51,6 @@ #include #include -#include #include #include ==== //depot/projects/ppc-g5/sys/sparc64/isa/ofw_isa.c#2 (text+ko) ==== @@ -41,10 +41,10 @@ #include #include +#include #include #include -#include #include #include ==== //depot/projects/ppc-g5/sys/sparc64/pci/apb.c#2 (text+ko) ==== @@ -53,7 +53,6 @@ #include #include -#include #include #include ==== //depot/projects/ppc-g5/sys/sparc64/pci/ofw_pci.h#2 (text+ko) ==== @@ -34,7 +34,7 @@ #ifndef _SPARC64_PCI_OFW_PCI_H_ #define _SPARC64_PCI_OFW_PCI_H_ -#include +#include typedef uint32_t ofw_pci_intr_t; ==== //depot/projects/ppc-g5/sys/sparc64/pci/ofw_pcib.c#2 (text+ko) ==== @@ -45,7 +45,6 @@ #include #include -#include #include #include ==== //depot/projects/ppc-g5/sys/sparc64/pci/ofw_pcib_subr.c#2 (text+ko) ==== @@ -37,7 +37,6 @@ #include #include -#include #include #include ==== //depot/projects/ppc-g5/sys/sparc64/pci/ofw_pcibus.c#2 (text+ko) ==== @@ -40,7 +40,6 @@ #include #include -#include #include #include ==== //depot/projects/ppc-g5/sys/sparc64/pci/psycho.c#3 (text+ko) ==== @@ -64,7 +64,6 @@ #include #include #include -#include #include #include ==== //depot/projects/ppc-g5/sys/sparc64/pci/schizo.c#3 (text+ko) ==== @@ -64,7 +64,6 @@ #include #include #include -#include #include #include ==== //depot/projects/ppc-g5/sys/sparc64/sparc64/ofw_machdep.c#4 (text+ko) ==== @@ -43,7 +43,6 @@ #include #include -#include #include void From owner-p4-projects@FreeBSD.ORG Mon Nov 17 02:29:32 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CFCBE1065670; Mon, 17 Nov 2008 02:29:32 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 942D81065677 for ; Mon, 17 Nov 2008 02:29:32 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 832DD8FC12 for ; Mon, 17 Nov 2008 02:29:32 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAH2TWPZ058069 for ; Mon, 17 Nov 2008 02:29:32 GMT (envelope-from nwhitehorn@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAH2TWaj058066 for perforce@freebsd.org; Mon, 17 Nov 2008 02:29:32 GMT (envelope-from nwhitehorn@freebsd.org) Date: Mon, 17 Nov 2008 02:29:32 GMT Message-Id: <200811170229.mAH2TWaj058066@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to nwhitehorn@freebsd.org using -f From: Nathan Whitehorn To: Perforce Change Reviews Cc: Subject: PERFORCE change 153069 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, 17 Nov 2008 02:29:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=153069 Change 153069 by nwhitehorn@nwhitehorn_trantor on 2008/11/17 02:29:09 if (); is wrong. if () is right. Thanks to haro for pointing this out. Affected files ... .. //depot/projects/ppc-g5/sys/powerpc/powermac/grackle.c#9 edit Differences ... ==== //depot/projects/ppc-g5/sys/powerpc/powermac/grackle.c#9 (text+ko) ==== @@ -259,7 +259,7 @@ iparent = node; if (OF_getprop(iparent,"#interrupt-cells",&sc->sc_icells, - sizeof(sc->sc_icells)) <= 0); + sizeof(sc->sc_icells)) <= 0) sc->sc_icells = 1; device_add_child(dev, "pci", device_get_unit(dev)); From owner-p4-projects@FreeBSD.ORG Mon Nov 17 03:29:58 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E77FC1065673; Mon, 17 Nov 2008 03:29:57 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9F9641065670 for ; Mon, 17 Nov 2008 03:29:57 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from agogare.doit.wisc.edu (agogare.doit.wisc.edu [144.92.197.211]) by mx1.freebsd.org (Postfix) with ESMTP id 737A38FC08 for ; Mon, 17 Nov 2008 03:29:57 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; charset=ISO-8859-1; format=flowed Received: from avs-daemon.smtpauth2.wiscmail.wisc.edu by smtpauth2.wiscmail.wisc.edu (Sun Java(tm) System Messaging Server 6.3-6.03 (built Mar 14 2008; 32bit)) id <0KAG00F04HLW1700@smtpauth2.wiscmail.wisc.edu> for perforce@freebsd.org; Sun, 16 Nov 2008 20:29:56 -0600 (CST) Received: from trantor.tachypleus.net (adsl-99-154-3-101.dsl.mdsnwi.sbcglobal.net [99.154.3.101]) by smtpauth2.wiscmail.wisc.edu (Sun Java(tm) System Messaging Server 6.3-6.03 (built Mar 14 2008; 32bit)) with ESMTPSA id <0KAG004KCHLVE140@smtpauth2.wiscmail.wisc.edu>; Sun, 16 Nov 2008 20:29:55 -0600 (CST) Date: Sun, 16 Nov 2008 20:30:50 -0600 From: Nathan Whitehorn In-reply-to: <20081117.103038.36764854.haro@kgt.co.jp> To: haro@kgt.co.jp Message-id: <4920D75A.60206@freebsd.org> X-Spam-Report: AuthenticatedSender=yes, SenderIP=99.154.3.101 X-Spam-PmxInfo: Server=avs-13, Version=5.4.2.344556, Antispam-Engine: 2.6.0.325393, Antispam-Data: 2008.11.17.21918, SenderIP=99.154.3.101 References: <200811162259.mAGMxvlw026231@repoman.freebsd.org> <20081117.103038.36764854.haro@kgt.co.jp> User-Agent: Thunderbird 2.0.0.17 (X11/20080928) Cc: perforce@freebsd.org Subject: Re: PERFORCE change 153060 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, 17 Nov 2008 03:29:58 -0000 haro@kgt.co.jp wrote: [snip] > Hello Nathan, > > A ";" after "if" statement does not seem correct to me. > > Hope this helps, > Haro > =----------------------------------------------------------------------- > _ _ Munehiro (haro) Matsuda > -|- /_\ |_|_| KGT Inc. > /|\ |_| |_|_| > > Yes, that was quite wrong. Thanks for catching it! -Nathan From owner-p4-projects@FreeBSD.ORG Mon Nov 17 03:36:41 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4BB5C1065673; Mon, 17 Nov 2008 03:36:41 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0FB6A1065674 for ; Mon, 17 Nov 2008 03:36:41 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id F15FA8FC18 for ; Mon, 17 Nov 2008 03:36:40 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAH3aeaW064301 for ; Mon, 17 Nov 2008 03:36:40 GMT (envelope-from nwhitehorn@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAH3ae3a064297 for perforce@freebsd.org; Mon, 17 Nov 2008 03:36:40 GMT (envelope-from nwhitehorn@freebsd.org) Date: Mon, 17 Nov 2008 03:36:40 GMT Message-Id: <200811170336.mAH3ae3a064297@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to nwhitehorn@freebsd.org using -f From: Nathan Whitehorn To: Perforce Change Reviews Cc: Subject: PERFORCE change 153071 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, 17 Nov 2008 03:36:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=153071 Change 153071 by nwhitehorn@nwhitehorn_trantor on 2008/11/17 03:35:43 Last piece of the puzzle: the 32-bit real mode firmware implementation. Unlike the previous real-mode Open Firmware support, this uses a bounce page, and so should work for talking to the standard PPC 32-bit firmware on a full 64-bit port (even for firmware running with the MMU on, since we will get our direct map back then). Affected files ... .. //depot/projects/ppc-g5/sys/conf/files.powerpc#11 edit .. //depot/projects/ppc-g5/sys/powerpc/ofw/ofw_real.c#1 add Differences ... ==== //depot/projects/ppc-g5/sys/conf/files.powerpc#11 (text+ko) ==== @@ -118,6 +118,7 @@ powerpc/ofw/ofw_pcibus.c optional pci aim powerpc/ofw/ofw_pcib_pci.c optional pci aim powerpc/ofw/ofw_syscons.c optional sc aim +powerpc/ofw/ofw_real.c optional aim powerpc/powermac/ata_kauai.c optional powermac ata powerpc/powermac/ata_macio.c optional powermac ata powerpc/powermac/ata_dbdma.c optional powermac ata From owner-p4-projects@FreeBSD.ORG Mon Nov 17 04:44:50 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 499B71065672; Mon, 17 Nov 2008 04:44:50 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0D774106564A for ; Mon, 17 Nov 2008 04:44:50 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D4F328FC1A for ; Mon, 17 Nov 2008 04:44:49 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAH4inBB070702 for ; Mon, 17 Nov 2008 04:44:49 GMT (envelope-from nwhitehorn@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAH4inhT070700 for perforce@freebsd.org; Mon, 17 Nov 2008 04:44:49 GMT (envelope-from nwhitehorn@freebsd.org) Date: Mon, 17 Nov 2008 04:44:49 GMT Message-Id: <200811170444.mAH4inhT070700@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to nwhitehorn@freebsd.org using -f From: Nathan Whitehorn To: Perforce Change Reviews Cc: Subject: PERFORCE change 153073 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, 17 Nov 2008 04:44:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=153073 Change 153073 by nwhitehorn@nwhitehorn_trantor on 2008/11/17 04:44:03 Remove some debugging code that snuck into P4. Affected files ... .. //depot/projects/ppc-g5/sys/sparc64/sparc64/machdep.c#4 edit Differences ... ==== //depot/projects/ppc-g5/sys/sparc64/sparc64/machdep.c#4 (text+ko) ==== @@ -305,8 +305,6 @@ OF_install(OFW_STD_DIRECT, 0); OF_init(ofw_entry); - //OF_printf("Real Open Firmware is working\n"); - /* * Prime our per-CPU data page for use. Note, we are using it for * our stack, so don't pass the real size (PAGE_SIZE) to pcpu_init From owner-p4-projects@FreeBSD.ORG Mon Nov 17 06:34:47 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 93B4F1065678; Mon, 17 Nov 2008 06:34:47 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 575941065675 for ; Mon, 17 Nov 2008 06:34:47 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1910E8FC13 for ; Mon, 17 Nov 2008 06:34:47 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAH6YjjA090336 for ; Mon, 17 Nov 2008 06:34:45 GMT (envelope-from pgj@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAH6YjLn090334 for perforce@freebsd.org; Mon, 17 Nov 2008 06:34:45 GMT (envelope-from pgj@FreeBSD.org) Date: Mon, 17 Nov 2008 06:34:45 GMT Message-Id: <200811170634.mAH6YjLn090334@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to pgj@FreeBSD.org using -f From: Gabor Pali To: Perforce Change Reviews Cc: Subject: PERFORCE change 153077 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, 17 Nov 2008 06:34:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=153077 Change 153077 by pgj@kolbasz on 2008/11/17 06:34:29 IFC Affected files ... .. //depot/projects/docproj_hu/www/en/docproj/translations.sgml#5 integrate .. //depot/projects/docproj_hu/www/en/news/status/report-2008-07-2008-09.xml#2 integrate .. //depot/projects/docproj_hu/www/share/sgml/commercial.consult.xml#9 integrate .. //depot/projects/docproj_hu/www/share/sgml/commercial.isp.xml#8 integrate .. //depot/projects/docproj_hu/www/share/sgml/navibar.ent#3 integrate .. //depot/projects/docproj_hu/www/share/sgml/news.xml#27 integrate Differences ... ==== //depot/projects/docproj_hu/www/en/docproj/translations.sgml#5 (text+ko) ==== @@ -1,6 +1,6 @@ - + ]> @@ -209,15 +209,15 @@
Documents available
+ Web, FAQ, FDP Primer, + Handbook, porters-handbook, some articles.
Documents currently being worked on
- Handbook, - Web, developers-handbook, arch-handbook.
==== //depot/projects/docproj_hu/www/en/news/status/report-2008-07-2008-09.xml#2 (text+ko) ==== @@ -2,7 +2,7 @@ - + July-September @@ -14,7 +14,7 @@ Introduction

In this Quarter work has been progressing in quite a few areas of - FreeBSD. FreeBSD 7.1 BETA2 and 6.4 RC2 have been released for + FreeBSD. FreeBSD 7.1-BETA2 and 6.4-RC2 have been released for pre-release testing. EuroBSDCon 2008 took place in Strasbourg, France and quite a few developers got together for the Developer Summit before the Conference. The USB2 stack has been imported into the @@ -49,6 +49,12 @@ + docs + + Documentation + + + misc Miscellaneous @@ -99,21 +105,22 @@ is a line of cheap subnotebooks. These come with Linux or Windows preinstalled. The hardware is a bit inconventional, so it required - some work to work properly. Also, these machines contains some - hardware that was not supported by FreeBSD.

+ some efforts to make FreeBSD run properly on this hardware. Also, + these machines contain some hardware that was not supported by + FreeBSD.

Currently FreeBSD should run on all Eee models out of the box, and most hardware should just work. At least, 700, 701, 901 and 1000 was tested successfully. The hardware supported includes Atheros wireless backed by ath(4) in HEAD (you still need a patch - for for RELENG_7), Attansic L2 FastEthernet controller (ae(4)), + for RELENG_7), Attansic L2 FastEthernet controller (ae(4)), High Definition audio controller (snd_hda), Synaptics touchpad and so on. Suspend/resume also works fine with some exceptions.

There is also a hardware monitoring module, that allows user to - control FAN speeds and voltage, as well as monitor current CPU + control FAN speed and voltage, as well as monitor current CPU temperature. Wiki page contains information on how to obtain this - module and use it. There're also a lot of useful tips and tricks + module and use it. There are also a lot of useful tips and tricks for using FreeBSD on ASUS EeePC on that page.

@@ -149,24 +156,24 @@ -

The implementation of cvsmode for csup have become more mature, - and have been tested by a few people so far. All parts directly - related to CVSMode have been implemented, and it seems to works - quite. There is still a need for testers, so any users of cvsup +

The implementation of cvsmode for csup has become more mature, + and has been tested by a few people so far. All parts directly + related to CVSMode have been implemented, and it seems to work + quite well. Testers are still needed, so any users of cvsup using it to mirror or fetch the CVS repository (cvsmode/mirror mode) are encouraged to try it.

- Implement support for the rsync protocol (not needed for it - to work, but it will probably speed up csup in some cases) + Implement support for the rsync protocol (not needed for proper + working, but it will probably speed up csup in some cases) Implement complete support for using the status file in cvsmode - + The FreeBSD Hungarian Documentation Project @@ -246,11 +253,9 @@ offline - versions are available. A new translation has been added, - - gjournal-desktop - - .

+ versions are available. A recently translated article + ( + gjournal-desktop) has also been added.

Hungarian translation of the FreeBSD Documentation Project Primer for New Contributors @@ -416,7 +421,7 @@ this year and is in the final stage now. A commit is imminent waiting for final review to be finished.

-

As an alternate solution to full network stack virtualization, +

As an alternative solution to full network stack virtualization, this work shall provide a lightweight solution for multi-IP virtualization. The changes are even more important because of the emerging demand for IPv6.

@@ -455,7 +460,7 @@ -

Earlier this year I put effort in the creation of a new layout +

Earlier this year I put efforts into the creation of a new layout for the FreeBSD mailinglists. The following issues were tackled:

  • Display which mailinglists are active and are visited @@ -614,7 +619,7 @@ available in the SVN tree. Currently the MPC8572 support covers:
    • all existing functionality of FreeBSD/MPC85XX (console, e500 - interrupts/exceptions, networking etc.)
    • + interrupts/exceptions, networking, etc.)
    • SMP
    • ==== //depot/projects/docproj_hu/www/share/sgml/commercial.consult.xml#9 (text+ko) ==== @@ -1,12 +1,12 @@ - + - $FreeBSD: www/share/sgml/commercial.consult.xml,v 1.55 2008/10/21 07:28:34 remko Exp $ + $FreeBSD: www/share/sgml/commercial.consult.xml,v 1.57 2008/11/14 21:12:47 jkois Exp $ @@ -100,6 +100,18 @@ + + ALE Software + http://linux.wroclaw.pl/ + + We offer IT consulting, systems integration and corporate information + systems based on BSD software. For more information, email + admin@linux.wroclaw.pl or + visit our website. We operate + mostly in Eastern Europe (Poland). + + + ASG Technologies http://www.asgtechnologies.com/ @@ -116,6 +128,20 @@ + + AnonBSD Inc. + https://sites.google.com/site/anonbsd/ + + We provide IT environment consulting. Support in FreeBSD, OpenBSD, + Linux (Debian, RedHat, SUSE, Gentoo, Slackware) and OpenSolaris. High + availability, virtualization, monitoring, security, deployment, + network infrastructure. We service in São Paulo/SP and + Campinas/SP in Brazil. Contact us via e-mail (ricardo.ichizo@gmail.com) or + by phone at +55 (19) 8202-1567. + + + AYN & Associates http://www.aynassociates.com ==== //depot/projects/docproj_hu/www/share/sgml/commercial.isp.xml#8 (text+ko) ==== @@ -1,15 +1,28 @@ - + - $FreeBSD: www/share/sgml/commercial.isp.xml,v 1.38 2008/10/22 19:52:02 jkois Exp $ + $FreeBSD: www/share/sgml/commercial.isp.xml,v 1.40 2008/11/14 21:37:31 jkois Exp $ + + Astute Hosting Incorporated + http://www.astutehosting.com + + Astute Hosting provides advanced high-availability semi-managed + dedicated hosting with all the flexibility of co-location but at + a better price point than most unmanaged dedicated solutions. + FreeBSD is our OS of choice, and what we run on our own servers and + workstations. Our bandwidth consists of 4 Tier 1's, and hundreds of + peers across North America, Europe, and Asia. + + + IP Global.net http://www.ipglobal.net/ @@ -159,7 +172,7 @@ http://www.hostpoint.ch/ With 55,000 customers and 100,000 domain names (status quo - December 2007), Hostpoint is Switzerland’s leading hosting + December 2007), Hostpoint is Switzerlands leading hosting provider. Hostpoint offers website and application hosting services throughout Switzerland. ==== //depot/projects/docproj_hu/www/share/sgml/navibar.ent#3 (text+ko) ==== @@ -1,4 +1,4 @@ - +
    • Community
    • Mailing Lists
    • +
    • Forums
    • IRC
    • Newsgroups
    • User Groups
    • ==== //depot/projects/docproj_hu/www/share/sgml/news.xml#27 (text+ko) ==== @@ -25,7 +25,7 @@ - $FreeBSD: www/share/sgml/news.xml,v 1.207 2008/11/11 03:52:54 brd Exp $ + $FreeBSD: www/share/sgml/news.xml,v 1.209 2008/11/16 17:15:46 danger Exp $ @@ -36,6 +36,23 @@ 11 + 16 + + + Official FreeBSD Forums Launched + +

      The FreeBSD project is finally, after much work, pleased to + announce the availability of an official FreeBSD web based + discussion forum. It is our hope that this forum will serve + as a public support channel for FreeBSD users around the world + and as a complement to our fine mailing lists.

      + +

      You can register and start using our new service here: http://forums.FreeBSD.org.

      +
      +
      + + 10 From owner-p4-projects@FreeBSD.ORG Mon Nov 17 09:12:26 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 934C11065673; Mon, 17 Nov 2008 09:12:26 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 57770106564A for ; Mon, 17 Nov 2008 09:12:26 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 44C208FC16 for ; Mon, 17 Nov 2008 09:12:26 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAH9CQHr016509 for ; Mon, 17 Nov 2008 09:12:26 GMT (envelope-from pgj@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAH9CPDX016507 for perforce@freebsd.org; Mon, 17 Nov 2008 09:12:25 GMT (envelope-from pgj@FreeBSD.org) Date: Mon, 17 Nov 2008 09:12:25 GMT Message-Id: <200811170912.mAH9CPDX016507@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to pgj@FreeBSD.org using -f From: Gabor Pali To: Perforce Change Reviews Cc: Subject: PERFORCE change 153085 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, 17 Nov 2008 09:12:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=153085 Change 153085 by pgj@kolbasz on 2008/11/17 09:11:35 MFen (doc): 1.110 -> 1.111 hu_HU.ISO8859-2/books/handbook/Makefile 1.235 -> 1.236 hu_HU.ISO8859-2/books/handbook/config/chapter.sgml 1.39 -> 1.42 hu_HU.ISO8859-2/books/handbook/preface/preface.sgml Affected files ... .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/Makefile#6 edit .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/config/chapter.sgml#17 edit .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/preface/preface.sgml#4 edit Differences ... ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/Makefile#6 (text+ko) ==== @@ -4,7 +4,7 @@ # $FreeBSD: doc/hu_HU.ISO8859-2/books/handbook/Makefile,v 1.3 2008/10/05 01:34:24 pgj Exp $ # %SOURCE% en_US.ISO8859-1/books/handbook/Makefile -# %SRCID% 1.110 +# %SRCID% 1.111 # # Build the FreeBSD Handbook. # @@ -28,6 +28,13 @@ # easily be imported into PGP/GPG. # # ------------------------------------------------------------------------ +# +# To add a new chapter to the Handbook: +# +# - Update this Makefile, chapters.ent and book.sgml +# - Add a descriptive entry for the new chapter in preface/preface.sgml +# +# ------------------------------------------------------------------------ .PATH: ${.CURDIR}/../../share/sgml/glossary ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/config/chapter.sgml#17 (text+ko) ==== @@ -7,7 +7,7 @@ @@ -169,21 +169,38 @@ felhasználónk van a rendszerben és hogy mekkora naplókat tartunk meg. Itt a legtöbb felhasználónak soha nem lesz - szüksége egy gigabyte-nál több helyre, - de ne feledjük, hogy a /var/tmp - könyvtárban el kell tudni férnie a - csomagoknak. + szüksége egy gigabyte-nál több + helyre. + + + Bizonyos esetekben a /var/tmp + könyvtárban azért ennél több + tárterület szükségeltetik. Amikor a + &man.pkg.add.1; segítségével egy friss + szoftvert telepítünk a rendszerünkre, akkor + a program a /var/tmp + könyvtárba tömöríti ki a + hozzátartozó csomag tartalmát. + Ezért a nagyobb szoftvercsomagok, mint + például a Firefox + vagy az OpenOffice esetén + gondok merülhetnek fel, ha nem rendelkezünk + elegendõ szabad területtel a + /var/tmp + könyvtárban. + A /usr partíció - tartalmazza a rendszer mûködéséhez - elengedhetetlenül fontos legtöbb - állományt, a portok + tartalmaz a rendszer mûködéséhez + elengedhetetlenül számos fontos + állományt, többek közt a portok gyûjteményét (ajánlott, lásd &man.ports.7;) és a forráskódot - (választható). Ez utóbbiak a - telepítés során - választhatóak. Ehhez a - partícióhoz legalább két + (választható). A portok és az + alaprendszer forrásai telepítés + során választhatóak, de + telepítésük esetén akkor ezen a + partíción legalább két gigabyte-nyi hely ajánlott. Vegyük figyelembe a tárbeli igényeket, @@ -202,7 +219,6 @@ kicsire választja. Partícionáljuk okosan és nagylelkûen! - ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/preface/preface.sgml#4 (text+ko) ==== @@ -4,7 +4,7 @@ @@ -606,6 +606,18 @@ + : Támogatott + állományrendszerek + + A &os; operációs rendszer + számára nem natív + állományrendszerekkel foglalkozik, + például a &sun; Z + állományrendszerével. + + + + : A Vinum kötetkezelõ @@ -654,9 +666,39 @@ + + : DTrace + + A &sun; DTrace eszközének + beállítását és + használatát mutatja be. A + segítségével megvalósított + dinamikus nyomkövetéssel + lehetõségünk nyílik valós + idejû elemzéseken keresztül + felderíteni a különbözõ + teljesítménybeli + problémákat. + + + + : A &os; + frissítése + + A telepített &os; rendszerek + frissítésére használható + új eszközöket mutatjuk be. Az alaprendszer + esetén a &man.freebsd-update.8;, a + Portgyûjtemény esetén pedig a + &man.portsnap.8; használatát ismerhetjük + meg. + + + + : Soros vonali kommunikáció From owner-p4-projects@FreeBSD.ORG Mon Nov 17 14:59:19 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7D4EA10656D3; Mon, 17 Nov 2008 14:59:19 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 380ED10656D5 for ; Mon, 17 Nov 2008 14:59:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 26F968FC14 for ; Mon, 17 Nov 2008 14:59:19 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAHExIia059887 for ; Mon, 17 Nov 2008 14:59:18 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAHExI3e059885 for perforce@freebsd.org; Mon, 17 Nov 2008 14:59:18 GMT (envelope-from hselasky@FreeBSD.org) Date: Mon, 17 Nov 2008 14:59:18 GMT Message-Id: <200811171459.mAHExI3e059885@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 153087 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, 17 Nov 2008 14:59:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=153087 Change 153087 by hselasky@hselasky_laptop001 on 2008/11/17 14:59:00 Libusb20 improvements. Affected files ... .. //depot/projects/usb/src/lib/libusb20/libusb20_compat01.c#9 edit .. //depot/projects/usb/src/lib/libusb20/libusb20_ugen20.c#12 edit Differences ... ==== //depot/projects/usb/src/lib/libusb20/libusb20_compat01.c#9 (text+ko) ==== @@ -177,19 +177,42 @@ if (err) return (NULL); + /* + * Dequeue USB device from backend queue so that it does not get + * freed when the backend is re-scanned: + */ + libusb20_be_dequeue_device(usb_backend, dev->dev); + return (dev->dev); } int -usb_close(usb_dev_handle * dev) +usb_close(usb_dev_handle * udev) { + struct usb_device *dev; int err; - err = libusb20_dev_close((void *)dev); + err = libusb20_dev_close((void *)udev); if (err) return (-1); + if (usb_backend != NULL) { + /* + * Enqueue USB device to backend queue so that it gets freed + * when the backend is re-scanned: + */ + libusb20_be_enqueue_device(usb_backend, (void *)udev); + } else { + /* + * The backend is gone. Free device data so that we + * don't start leaking memory! + */ + dev = usb_device(udev); + libusb20_dev_free((void *)udev); + LIST_DEL(usb_global_bus.devices, dev); + free(dev); + } return (0); } @@ -697,7 +720,8 @@ /* "bConfigurationValue" not found */ return (-1); } - if ((dev->config + i)->bConfigurationValue == bConfigurationValue) { + if ((dev->config + i)->bConfigurationValue == + bConfigurationValue) { break; } } ==== //depot/projects/usb/src/lib/libusb20/libusb20_ugen20.c#12 (text+ko) ==== @@ -432,12 +432,11 @@ ugen20_close_device(struct libusb20_device *pdev) { struct usb2_fs_uninit fs_uninit; - int error = 0; if (pdev->privBeData) { memset(&fs_uninit, 0, sizeof(fs_uninit)); if (ioctl(pdev->file, USB_FS_UNINIT, &fs_uninit)) { - error = LIBUSB20_ERROR_OTHER; + /* ignore this error */ } free(pdev->privBeData); } @@ -447,7 +446,7 @@ close(pdev->file_ctrl); pdev->file = -1; pdev->file_ctrl = -1; - return (error); + return (0); /* success */ } static void From owner-p4-projects@FreeBSD.ORG Tue Nov 18 03:46:39 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EE8381065674; Tue, 18 Nov 2008 03:46:38 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 903F51065670 for ; Tue, 18 Nov 2008 03:46:38 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7D2F88FC1C for ; Tue, 18 Nov 2008 03:46:38 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAI3kcH5050040 for ; Tue, 18 Nov 2008 03:46:38 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAI3kcDk050038 for perforce@freebsd.org; Tue, 18 Nov 2008 03:46:38 GMT (envelope-from sam@freebsd.org) Date: Tue, 18 Nov 2008 03:46:38 GMT Message-Id: <200811180346.mAI3kcDk050038@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 153113 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, 18 Nov 2008 03:46:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=153113 Change 153113 by sam@sam_ebb on 2008/11/18 03:46:05 add 1/2 and 1/4 width channel rate schedules Affected files ... .. //depot/projects/vap/sys/dev/ath/ath_rate/sample/sample.c#21 edit Differences ... ==== //depot/projects/vap/sys/dev/ath/ath_rate/sample/sample.c#21 (text+ko) ==== @@ -274,7 +274,6 @@ sn->current_sample_rix[size_bin] = -1; } sn->packets_since_sample[size_bin] = 0; - } else { change_rates = 0; if (!sn->packets_sent[size_bin] || best_rix == -1) { @@ -359,6 +358,7 @@ { 4,A(48), 3,A( 36), 4,A( 24), 2,A(12) }, /* 48Mb/s */ { 4,A(54), 3,A( 48), 4,A( 36), 2,A(24) } /* 54Mb/s */ }; +#undef A #define G(_r) \ (((_r) == 1) ? 0 : (((_r) == 2) ? 1 : (((_r) == 5.5) ? 2 : \ @@ -379,7 +379,40 @@ { 4,G(48), 3,G( 36), 4,G( 24), 2,G( 1) }, /* 48Mb/s */ { 4,G(54), 3,G( 48), 4,G( 36), 2,G( 1) } /* 54Mb/s */ }; +#undef G +#define H(_r) \ + (((_r) == 3) ? 0 : (((_r) == 4.5) ? 1 : (((_r) == 6) ? 2 : \ + (((_r) == 9) ? 3 : (((_r) == 12) ? 4 : (((_r) == 18) ? 5 : \ + (((_r) == 24) ? 6 : (((_r) == 27) ? 7 : 0)))))))) +static const struct txschedule series_half[] = { + { 3,H( 3), 3,H( 3), 0,H( 3), 0,H( 3) }, /* 3Mb/s */ + { 4,H(4.5),3,H( 3), 4,H( 3), 0,H( 3) }, /* 4.5Mb/s */ + { 4,H( 6), 3,H( 3), 4,H( 3), 0,H( 3) }, /* 6Mb/s */ + { 4,H( 9), 3,H( 6), 4,H( 3), 2,H( 3) }, /* 9Mb/s */ + { 4,H(12), 3,H( 9), 4,H( 6), 2,H( 3) }, /* 12Mb/s */ + { 4,H(18), 3,H( 12), 4,H( 9), 2,H( 3) }, /* 18Mb/s */ + { 4,H(24), 3,H( 18), 4,H( 12), 2,H( 6) }, /* 24Mb/s */ + { 4,H(27), 3,H( 24), 4,H( 18), 2,H(12) } /* 27Mb/s */ +}; +#undef H + +#define Q(_r) \ + (((_r) == 1.5) ? 0 : (((_r) ==2.25) ? 1 : (((_r) == 3) ? 2 : \ + (((_r) == 4.5) ? 3 : (((_r) == 6) ? 4 : (((_r) == 9) ? 5 : \ + (((_r) == 12) ? 6 : (((_r) == 13.5)? 7 : 0)))))))) +static const struct txschedule series_quarter[] = { + { 3,Q( 1.5),3,Q(1.5), 0,Q(1.5), 0,Q(1.5) }, /* 1.5Mb/s */ + { 4,Q(2.25),3,Q(1.5), 4,Q(1.5), 0,Q(1.5) }, /*2.25Mb/s */ + { 4,Q( 3),3,Q(1.5), 4,Q(1.5), 0,Q(1.5) }, /* 3Mb/s */ + { 4,Q( 4.5),3,Q( 3), 4,Q(1.5), 2,Q(1.5) }, /* 4.5Mb/s */ + { 4,Q( 6),3,Q(4.5), 4,Q( 3), 2,Q(1.5) }, /* 6Mb/s */ + { 4,Q( 9),3,Q( 6), 4,Q(4.5), 2,Q(1.5) }, /* 9Mb/s */ + { 4,Q( 12),3,Q( 9), 4,Q( 6), 2,Q( 3) }, /* 12Mb/s */ + { 4,Q(13.5),3,Q( 12), 4,Q( 9), 2,Q( 6) } /*13.5Mb/s */ +}; +#undef Q + void ath_rate_setupxtxdesc(struct ath_softc *sc, struct ath_node *an, struct ath_desc *ds, int shortPreamble, u_int8_t rix) @@ -675,7 +708,7 @@ ath_rate_ctl_reset(sc, &an->an_node); } -static const struct txschedule *mrr_schedules[IEEE80211_MODE_MAX] = { +static const struct txschedule *mrr_schedules[IEEE80211_MODE_MAX+2] = { NULL, /* IEEE80211_MODE_AUTO */ series_11a, /* IEEE80211_MODE_11A */ series_11g, /* IEEE80211_MODE_11B */ @@ -686,6 +719,8 @@ series_11a, /* IEEE80211_MODE_STURBO_A */ series_11a, /* IEEE80211_MODE_11NA */ series_11g, /* IEEE80211_MODE_11NG */ + series_half, /* IEEE80211_MODE_HALF */ + series_quarter, /* IEEE80211_MODE_QUARTER */ }; /* @@ -704,7 +739,7 @@ KASSERT(rt != NULL, ("no rate table, mode %u", sc->sc_curmode)); - KASSERT(sc->sc_curmode < IEEE80211_MODE_MAX, + KASSERT(sc->sc_curmode < IEEE80211_MODE_MAX+2, ("curmode %u", sc->sc_curmode)); sn->sched = mrr_schedules[sc->sc_curmode]; KASSERT(sn->sched != NULL, From owner-p4-projects@FreeBSD.ORG Tue Nov 18 05:42:36 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 957641065674; Tue, 18 Nov 2008 05:42:36 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 524FC1065670 for ; Tue, 18 Nov 2008 05:42:36 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 3F6648FC08 for ; Tue, 18 Nov 2008 05:42:36 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mAI5gaQi020595 for ; Tue, 18 Nov 2008 05:42:36 GMT (envelope-from pgj@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mAI5gaWq020592 for perforce@freebsd.org; Tue, 18 Nov 2008 05:42:36 GMT (envelope-from pgj@FreeBSD.org) Date: Tue, 18 Nov 2008 05:42:36 GMT Message-Id: <200811180542.mAI5gaWq020592@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to pgj@FreeBSD.org using -f From: Gabor Pali To: Perforce Change Reviews Cc: Subject: PERFORCE change 153117 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, 18 Nov 2008 05:42:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=153117 Change 153117 by pgj@kolbasz on 2008/11/18 05:41:57 IFC Affected files ... .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/Makefile#7 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/config/chapter.sgml#18 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/preface/preface.sgml#5 integrate Differences ... ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/Makefile#7 (text+ko) ==== @@ -2,7 +2,7 @@ # The FreeBSD Documentation Project # The FreeBSD Hungarian Documentation Project -# $FreeBSD: doc/hu_HU.ISO8859-2/books/handbook/Makefile,v 1.3 2008/10/05 01:34:24 pgj Exp $ +# $FreeBSD: doc/hu_HU.ISO8859-2/books/handbook/Makefile,v 1.4 2008/11/17 09:29:31 pgj Exp $ # %SOURCE% en_US.ISO8859-1/books/handbook/Makefile # %SRCID% 1.111 # ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/config/chapter.sgml#18 (text+ko) ==== @@ -1,7 +1,7 @@