Re: keep-state rule for icmp, really stateful ???
Sorry I missed something ... forget - Original Message - From: Peter Pentchev [EMAIL PROTECTED] To: Dennis Berger [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Sent: Thursday, August 02, 2001 7:26 PM Subject: Re: keep-state rule for icmp, really stateful ??? On Thu, Aug 02, 2001 at 05:22:36PM +0200, Dennis Berger wrote: Hi I have the following rule allowing traceroute and ping to my server. 200 allow icmp from any to any keep-state in recv tun0 icmptype 8 Now I would assume that this rule generate two dynamic rules back. The fire one is a rule that initiates ping to work properly it's just a dynamic ICMP rule 00200 2623 220332 (T 30, # 43) ty 0 icmp, 134.100.58.115 0 - 213.23.32.88 0 and the second that the traceroute UDP taffic from port 33434-33960 can pass in. But what happans ... the rule 200 doesn't open a second dynamic rule to allow udp traffic to specific ports back in, the traceroute UDP traffic will be blocked. To keep the icmp packetfiltering stateful it would be nice to implement this clean. Or maybe it is already implemented in CURRENT tree. What's the current state ? E.. maybe it's just me, but I just can't see how a rule that says 'allow icmp' should allow UDP traffic to pass through.. Maybe you haven't shown us all the rules? (And I don't necessarily mean 'all the rules pertaining to icmp and traceroute'.. it might as well be that some other rule, which you do not consider relevant, is blocking your traceroute packets.) G'luck, Peter -- I am jealous of the first word in this sentence. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
mark tinguely wrote: Also, the PIII CAN'T natively support more than 4GB of ram. If a particular PIII motherboard supports this, then it's using some kind of wierd chipset that allows this to happen. 4GB is the limit with a 32 bit chip I believe; and the PIII is a 32-bit chip. Since the Pentium Pro processor, the Intel chipsets support a physical address extension (PAE) which has 4 extra addressing bits, and a third level of page table indirection called the page-directory-pointer-table base address field. Bit 5 of control register 4, and then it uses the top 27 bits of control register 3 to select a 32 byte aligned region in the lower 4G. It also changes the PSE bit to refer to 2M instead of 4M pages, so your would needto DISABLE_PSE, or the FreeBSD kernel would freak when it enabled the 4M page on the kernel itself. Then the high 4 bits are used to pick a pointer entry (which is effectively a software segment register select, for all practical purposes), giving you 64G of addressable space, in chunks of 4G at a time. Practically, you end up having to overlap this, which tends to cut you down to 32G. The addressing use 64 bits for a memory pointer and the additional page indirection add to the overhead. The stickler is the MMU is still 32 bits. This means the PAE must segment the 64GB space into 4GB segments or 4 1GB segments. The OS must manage which pages are viewable to the process at this time. Not only that: you reload CR3, and none of these pages are really global, so you can't set the PG_G bit, and so you get the full TLB shootdown on everything, so a segment switch ends up shooting _everything_ down. There is a third mode of addressing using 2MB pages (simular to the 4MB page addressing mode for the 32 bit addressing scheme) that will only give a process access to 4GB of memory (not segmentable to a larger space, but can address physical memory located above the 4GB address). Not really useful, unless you go back to a task gate, which itself will limit you to 1024 things; with code + data, you end up halving that to 512, minus overhead drops it to 510, so you end up with a limitation on number of processes. You could do all the switching manually, but it is very, very hard. Further, you can write off shared memory and shared libraries, and some types of IPC (e.g. descriptor passing), unless you want to rework everything. IMO, the resulting kernel would be so slow as to prevent the changes from being useful, due to their expense. -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
On Thu, 2 Aug 2001, Julian Elischer wrote: On Thu, 2 Aug 2001, Rik van Riel wrote: On the really large machines, this can lead to the situation where even the page tables hardly fit into KVA. 4MB pages seem like the only solution ... There is no reason why we need to keep the kernel and the user process in the same 4GB map except for efficiency. There have been many UNIX machines in the past which put them in separate virtual spaces That was on machines where the CPU could actually address two separate spaces at once, right ? (like eg. m68k) The kernel would haev 4GB for itself and each process would have 4BG. System calls would be come more expensive as each would require a full page-table swap and a TLB flush. However it might be worth it for some people. Interrupt handling would also require a full page table swap and TLB flush. Considering that, I think the number of people for whom this will be worth it has probably dropped a bit ;) Rik -- Executive summary of a recent Microsoft press release: we are concerned about the GNU General Public License (GPL) http://www.surriel.com/ http://www.conectiva.com/ http://distro.conectiva.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
6G memory disks?
I suppose a 6G md memory disk is impossible? I recently applied all the patches recomended here and even got a 6G memory disk newfs'd and mount'd ... but when I ran bonnie (with size 100M) on it, it failed. Dave. -- |David Gilbert, Velocet Communications. | Two things can only be | |Mail: [EMAIL PROTECTED] | equal if and only if they | |http://www.velocet.net/~dgilbert | are precisely opposite. | =GLO To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
On Thu, 2 Aug 2001, Terry Lambert wrote: Name an OS that supports this; more than likely, you will have to appeal to a purpose built embedded system. errr, linux? To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
John Baldwin wrote: Err. hang on. This has zero to do with segmentation. Zip, nada. PAE is completely in the paging side of things. No matter what fun games you play with segmentation, you still end up with a 32-bit linear address that gets handed off to the paging translations. PAE just allows you to use more backing store across multiple processes, but you are still stuck with a 4gb virtual address space for processes. (Including KVM) IMO, the 4 bit selector register is the moral equivalent of a segment register. Personally, I think it's much less useful to run the kernel out of KVA space, than it is to have more memory available to the kernel for things like mbufs, so I'm not really very interested in trying to raise the per process address space limits this way. You could actually get 4G for the kernel and 4G for processes using this, but you would only need two segments to make this happen; mapping the other stuff at the same time makes little sense: you just map a window on it to implement region overlays for user or kernel data paging. Given the compiler tools we have, this still limits you to using only 4G in a given VA space, unless you did something evil, like add HLOCK/HUNLOCK, etc.. But to directly answer your question: by rewriting much of the low core virtual memory and page mapping handling code to know about segmentation. No, to rewrite said code to handle a different type of page table structure. Virtual table structure/segements: same difference: I'm now wdoing in software what I bought hardware to get away from having to do in software. Given the vastly simplified page management in Linux, I could see how there wouldn't really be a big performance loss over the way Linux does things without this, so it might be OK, so long as there were no shared memory regions, semaphores, etc.. That really makes it pretty useless. -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: NewCard / pccbb
: wi0: WaveLan/IEEE at port 0x100-0x13f irq 3 function 0 config 1 on : pccard0 : : Could that irq sharing be breaking something? It could also be that the pccard interrupt routing code (in src/sys/dev/pccard/pccard.c) is busted. If you look at it: static void pccard_intr(void *arg) { struct pccard_softc *sc = (struct pccard_softc *) arg; struct pccard_function *pf; STAILQ_FOREACH(pf, sc-card.pf_head, pf_list) { if (pf-intr_handler != NULL) { int reg = pccard_ccr_read(pf, PCCARD_CCR_STATUS); if (reg PCCARD_CCR_STATUS_INTR) { pccard_ccr_write(pf, PCCARD_CCR_STATUS, reg ~PCCARD_CCR_STATUS_INTR); pf-intr_handler(pf-intr_handler_arg); } } } } But if you look at the pccard stnadard, you'll find that the PCCARD_CCR_STATUS_INTR bit is only defined for MFC cards. So, try the following: static void pccard_intr(void *arg) { struct pccard_softc *sc = (struct pccard_softc *) arg; struct pccard_function *pf; STAILQ_FOREACH(pf, sc-card.pf_head, pf_list) { if (pf-intr_handler != NULL) { pf-intr_handler(pf-intr_handler_arg); } } } in its place. Warner To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Ïðåäëàãàåì ïðèîáðåñòè â ñîáñòâåííîñòü àäìèíèñòðàòèâíîå çäàíèå â Êàçàíè (Òàòàðñòàí, Ðîññèÿ): - Îáùàÿ ïëîùàäü 910 êâ. ì; - 2 ýòàæà; - Áîëüøîå êîëè÷åñòâî ïîìåùåíèé îò 7 äî 200 êâ.ì; - Ñîáñòâåííàÿ òåððèòîðèÿ - çåìåëüíûé ó÷àñòîê 0,101 Ãà. Çäàíèå - áûâøàÿ ñòîëîâàÿ ðå÷íîãî ïîðòà. Èìååò âûãîäíîå ðàñïîëîæåíèå: - íàïðîòèâ çäàíèÿ - âòîðîé ïî âåëè÷èíå îïòîâûé ïðîäóêòîâûé ãîðîäñêîé ðûíîê; - óäîáíûå ïîäúåçäíûå ïóòè; - áëèçêî ê öåíòðó ãîðîäà - 5 ìèí. åçäû; - áëèçêî ê æ/ä âîêçàëó - 5 ìèí. åçäû; - ðÿäîì ðå÷íîé ïîðò; - ðÿäîì æ/ä ïóòè. Çäàíèå èäåàëüíî ïîäõîäèò äëÿ ðàçìåùåíèÿ îôèñà ïðåäñòàâèòåëüñòâà Âàøåé êîìïàíèè â Òàòàðñòàíå èëè Ïîâîëæüå. Âîçìîæíà êîìïîíîâêà îôèñ/ñêëàä. Âñå êîììóíèêàöèè ïîäâåäåíû. Çäàíèå òðåáóåò ðåìîíòà (ïîëíàÿ âíóòðåííÿÿ îòäåëêà, âêëþ÷àÿ íîâûå îêîííûå è äâåðíûå áëîêè). Çäàíèå íàõîäèòñÿ â ÷àñòíîé ñîáñòâåííîñòè. Çåìëÿ - â áåññðî÷íîì ïîëüçîâàíèè. Öåíà çäàíèÿ - ÁÎËÅÅ ×ÅÌ ÄÎÑÒÓÏÍÀ. Åñëè âû çàèíòåðåñîâàíû â ïîëó÷åíèè îò íàñ áîëåå ïîäðîáíîé èíôîðìàöèè î äàííîì îáúåêòå, îòïðàâüòå ïóñòîå ïèñüìî ïî àäðåñó: [EMAIL PROTECTED] Ïðè ýòîì â Òåìå ñîîáùåíèÿ ÎÁßÇÀÒÅËÜÍÎ óêàæèòå: Ïðèøëèòå ïîäðîáíóþ èíôîðìàöèþ. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: a little O/T, but D.V.D. drivesfreeBSD
Julian Elischer wrote: anyone had success watching a dvd? (Anyone have the correct components saved away somewhere?) just got a drive and would like to test it.. :-) I managed to get vlc working (http://www.videolan.org) and actually watched a few minutes of DVD with it. It's not a particularly good player (no working subtitle support, no input buffer) so it tends to skip a bit on my PII-400. Faster machines may be able to maintain full speed. Interestingly enough vlc only uses about 60-80% of my CPU when playing, but still cannot maintain full speed (due to the lack of input buffer). Your only other option under FreeBSD is to try xine+captain_css (google is your friend), but I've never actually managed to get that configuration working. I almost played the first frame of a DVD once though. -- \ |_ _|__ __|_ \ __| Jason Andresen[EMAIL PROTECTED] |\/ | ||/ _| Network and Distributed Systems Engineer _| _|___| _| _|_\___| Office: 703-883-7755 To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
BUT, don't the motherboards also have to support this? And isn't it only supported through some wierd segmentation thing? KEn On Thu, 2 Aug 2001, John Baldwin wrote: On 02-Aug-01 Kenneth Wayne Culver wrote: Also, the PIII CAN'T natively support more than 4GB of ram. If a particular PIII motherboard supports this, then it's using some kind of wierd chipset that allows this to happen. 4GB is the limit with a 32 bit chip I believe; and the PIII is a 32-bit chip. Ken Go look at some Intel docs. P6 chips since the Pentium Pro (yes, before Pentium II) have supported PAE which allows for a 36-bit physical address. -- John Baldwin [EMAIL PROTECTED] -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc Power Users Use the Power to Serve! - http://www.FreeBSD.org/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: PR 25958
On Thu, 2 Aug 2001, John Baldwin wrote: Nate, Can you try out the patch at http://www.freebsd.org/~jhb/patches/mtrr.patch? I'd be glad to, however I no longer run FreeBSD. I have since switched to Linux. While FreeBSD was stable and reliable on my machine, I found that support for it was lacking in things like multimedia (playing movies, watching TV, and so on). I can say though that the MTRR problem is definitely a bug - under Linux MTRR's cause no trouble at all. I now use Linux Mandrake 8 with the default 2.4.3 kernel. It's similar to the patch in the PR with a slight cleanup. The patch is against current, but hopefully it applies ok to stable. (It should I think). The patch below looks like it should work. Not being much of a C programmer anymore I can't really say for certain though :) It might be adviseable to close this PR if no one else can verify the patch. -- _ ___ ___ | [EMAIL PROTECTED]//ZZ]__ | | C64/C128/SCPU |'/ |Z/ | | What's *YOUR* Hobby!? | \__|_\ | |_\___]___| To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: Wierd IRQ Routing issues
On Thu, Aug 02, 2001 at 10:01:25PM +0200, lists wrote: Hi, hoping someone can help me out with something here, because Ive got a very strange problem. On my one pc, when assigning an IRQ to my PCIC device, it assigns an IRQ and continues, works 100% now that I changed device.hints to look for pcic on pci instead of isa, card works everything. However, on my other pc with an identical setup, when trying to assign pcic irq it does this: (from dmesg): pci_cfgintr_search: linked (3) to configured irq 10 at 0:9:0 pci_cfgintr: 0:10 INTA routed to irq 10 Now for some reason I have it in my head that that irq routing is broken, because its the only difference I can find between the non-working box and the working box. Is there any way that I can force that card to not use a routed interrupt like that. Ive already tried fiddling in my bios with the IRQ settings to reserve things etc, no luck there either. I know for a fact that irq 5/7/9/10/11 are all available on my box, with nothing taking them. Any ideas would be MUCH appreciated The second box wouldn't be a -stable machine, would it now? I think PCIC IRQ routing was absolutely not working in -stable as of a few weeks ago, when Warner Losh started MFC'ing the PCIC bits. That MFC might not be complete yet. If both boxes are running -current, I'll just shut up :) G'luck, Peter -- This would easier understand fewer had omitted. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: malloc
On Fri, 3 Aug 2001, [iso-8859-1] vishwanath pargaonkar wrote: Hi, can anybody tell me in malloc what does third parameter DONTWAIT ,NOWAIT and WAITOK mean? Bcoz i have function being called using timeout.in that function i need to malloc a buffer. can i use WAITOK? please tell me abt this. you must use NOWAIT, and you must handle the case where it may fail and return NULL. TIA To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
kernel panics and ipfilter
1) Aug 3 15:41:15 www /kernel: panic: vm_page_remove(): page not found in hash Aug 3 15:41:15 www /kernel: seems box rebooted after that freebsd 4.3 release. 2) echo starting firewall kldload /modules/ipl.ko ipf -f /etc/ipf.rules another problems with this box is ipfilter.currently i enable the rules at startup by just kldloading the module basically and installing the ruleset.problem is when i take down ruleset and redo it, for some reason i cannot connect out anymore unless ruleset is completely removed. It is the exact same ruleset. THe only fix been this far is to just reboot the machine.i am starting to wonder if there is to much traffic to a box when you enable it right away that ipfilter maybe does not read them all. GOing to try a couple more things but if anyone has experieced this , some input would be most appreciated. -- Dan +--+ | BRAVENET WEB SERVICES | | [EMAIL PROTECTED] | | screen;cd /usr/src;make buildworld;cd ~ | | cp MYKERNEL /sys/i386/conf;cd /usr/src | |make buildkernel KERNCONF=MYKERNEL| |make installkernel KERNCONF=MYKERNEL;make installworld| +__+ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
Rik van Riel wrote: [ ... 4G on 32 bit macines ... ] The short answer is you can't. The longer answer is that you end up having to window it using segmentation; Only if you want to use it all within one process. No. It still bites you if you want to do IPC, etc., since you can not guarantee the structures used for this are all within the non-segmented region of memory. You can have multiple 2 GB (that's the maximum process size in FreeBSD, right?) programs at the same time, happily using all physical memory. The default maximum size for FreeBSD is 3G. You can tune this up or down, with the limit being that the larger the user space, the smaller the KVA space, and vice versa. Only the FreeBSD memory management subsystem doesn't support it (yet?). It's not a question of supporting it, it's a question of whether or not it's a useful idea at all. This basically means that the memory is useless as a DMA target or source for disk controllers or gigabit ethernet cards, and is pretty useless for swap, ... So for limited uses in data intensive applications, it might be usable, And for those data intensive applications, it is very useful indeed... I have yet to see one person using it for anything. So far, it is nothing more than marketing fodder: I haven't seen one motherboard capable of more than 4G worth of SIMMs. But to directly answer your question: by rewriting much of the low core virtual memory and page mapping handling code to know about segmentation. Not just that. There is a more insidious problem with the FreeBSD VM code and support of huge machines. Not really. The part of handling the PAE extended page table format and mapping high memory pages in and out of KVA (kernel virtual address) memory to copy stuff is easy. Yes. Problem is that you'll have to fit all of FreeBSD's VM data structures in the 2GB of KVA. This just isn't going to fit with the size the data structures have today ... I currently run with 3G+ of KVA; it would be simple to invert this, but this leaves me a 1G user space window, with 3G available for kernel structures, etc.. It takes about 1G for all of the kernel support stuff for 4G, with an allowance for 1/8th million open network connections. So it's not unreasonable to think of putting 8G or 16G in a box, and being able to map it all. So in order to support huge memory machines right, you'd have to put a number of FreeBSD's VM data structures on a rather strict diet. Not really. There's always 4M pages. -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
Oh ok, I knew that regular PIII's only had 32 bits... but it's still obviously a pain in the butt to use above 4GB. Ken On Thu, 2 Aug 2001, Rik van Riel wrote: On Thu, 2 Aug 2001, Kenneth Wayne Culver wrote: Also, the PIII CAN'T natively support more than 4GB of ram. If a particular PIII motherboard supports this, then it's using some kind of wierd chipset that allows this to happen. 4GB is the limit with a 32 bit chip I believe; and the PIII is a 32-bit chip. The Xeon series have 32 bits of virtual address space and 36 bits of physical address space. Rik -- Executive summary of a recent Microsoft press release: we are concerned about the GNU General Public License (GPL) http://www.surriel.com/ http://www.conectiva.com/ http://distro.conectiva.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: REMINDER: FreeBSD Monthly Development Status Report -- Request For Submissions (fwd)
To be honest, I unfairly singled out KSE in the last message -- Julian has submitted a status report, and I overlooked it in my mailbox. Sorry, Julian. :-) Robert N M Watson FreeBSD Core Team, TrustedBSD Project [EMAIL PROTECTED] NAI Labs, Safeport Network Services To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Panic!
Hi, I wrote some kernel code(a kernel proxy), which was giving problems ie hanging after x no. of connections, and rebooting on its own saying syncing disc, lost 97 buffers! Now, after booting, it shows all regiters like eip, etc. and says System halted. Can someoen let me know if I can recover the systam or will I have to reload the OS?:((( Thanks, Anjali
Re: How to visit physical memory above 4G?
The costs involved in doing DMA to/from the memory region above 4G will be incredible, unless the address space is both exported, and known, to the PCI bus; even then, it could only work for 64 bit cards, since 32 bith cards will only be able to address the first 4G of physical memory. Actually, most server-class hardware these days will have no trouble with DMA above 4GB; even the 32-bit devices support DAC. -- ... every activity meets with opposition, everyone who acts has his rivals and unfortunately opponents also. But not because people want to be opponents, rather because the tasks and relationships force people to take different points of view. [Dr. Fritz Todt] V I C T O R Y N O T V E N G E A N C E To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
NewCard / pccbb
Hi All, Im hoping someone can help me in clarifying some issues, Im attempting to find the problem with my orinoco wavelan card. Currently I have the card plugged into a pci - pcmcia bridge. As mentioned in a previous email, the card detects fine, (both under oldcard and newcard), I can use wicontrol on it, and all the rest of it, but the moment I try and ifconfig it or alternatively the moment I try and put packets through it, I get watchdog timeouts. Now my question is this, should I have the same irq on both the bridge device and the card, or could this be causing my problem. In a verbose boot mode I see the following: pccbb0: TI1410 PCI-CardBus Bridge at device 9.0 on pci0 pccbb0: PCI Memory allocated: 4400 pci_cfgintr_virgin: using routable interrupt 3 pci_cfgintr: 0:9 INTA routed to irq 3 cardbus0: Cardbus bus (newcard) on pccbb0 pccard0: 16-bit PCCard bus on pccbb0 Further down after snipping out a lot of crap I see this wi0: WaveLan/IEEE at port 0x100-0x13f irq 3 function 0 config 1 on pccard0 Could that irq sharing be breaking something? Thanks Andrew To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: PR 25958
Ok. You do know that 'fxtv' is developed on FreeBSD, right? :) My TV _is_ my workstation. :) Granted, I don't think you can watch DVD's on FreeBSD very easily. Actually I'd never heard of FxTV. I use XawTV, as buggy as it is. The problem isn't so much the application though, but rather, Xfree86 support for my video card. In order to use the TV tuner and video-in feautures of the ATI All-in-Wonder 128 Pro and related cards, you have to use the drivers provided by the GATOS project. (I guess at this point the XFree86 team has decided not to roll these drivers into the X source tree). I can say though that the MTRR problem is definitely a bug - under Linux MTRR's cause no trouble at all. Are you sure it's using them? :) I'm positive I've seen at least one program report that MTRR's were being used. Of course now I can't find the program that reported it. At any rate, they're enabled: natedac@daconcepts ~$ cat /proc/mtrr reg00: base=0x ( 0MB), size= 64MB: write-back, count=1 reg01: base=0x0400 ( 64MB), size= 32MB: write-back, count=1 reg02: base=0xf000 (3840MB), size= 16MB: write-combining, count=2 -- _ ___ ___ | [EMAIL PROTECTED]//ZZ]__ | | C64/C128/SCPU |'/ |Z/ | | What's *YOUR* Hobby!? | \__|_\ | |_\___]___| To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: [PATCH] [BIKESHED] Restarting from panic
On 03-Aug-01 Julian Elischer wrote: Also another wishlist item an async even log (maybe a rotating buffer) that logs the last 16 interrupts or whatever. (and maybe their microtimes) there are times you want to know what happenned BEFORE that crash.. :-) man ktr :) -- John Baldwin [EMAIL PROTECTED] -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc Power Users Use the Power to Serve! - http://www.FreeBSD.org/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: Does /dev/bpf work with kevent?
On Fri, Aug 03, 2001 at 01:51:20PM -0400, Garance A Drosihn wrote: At 10:26 AM -0400 8/3/01, Josh M Osborne wrote: I'm attempting to use kevent with /dev/bpf to check to see if it is ready for reads, but it seems to always return ready to read, but the reads get EAGAIN. Does /dev/bpf not work with kevent? Or should I look elsewhere for my bug (like forgetting some random ioctl)? If you can't use /dev/bpf can ng_bpf and ng_socket somehow be used? Any examples of either, or both laying around somewhere? (I've never used the netgraph stuff before -- as cool as netgraph looks I haven't had the need) Are you trying this on current or stable? current has a bug fix to bpf which still hasn't been merged to stable. sorry, i know i said i'd get you that patch, but my FreeBSD machines still aren't hooked up to the net, so i haven't had a chance to update to -STABLE in a long time... guess it'll have to wait until after 4.4 ;-( unfortunately, i don't think that'll effect kevent. it seemed to be pretty localized to select, although i must admit, i don't know all that much about how kevent works under the hood. -- garrett rooney Unix was not designed to stop you from [EMAIL PROTECTED] doing stupid things, because that would http://electricjellyfish.net/ stop you from doing clever things. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
dmesg behaviour
Hi All, We have a product based on 3.5-stable, and use dmesg at startup time to generate an XML description of the hardware, create interface name aliases, etc., and it has worked just fine for a couple of years. We've just purchased a new platform based on the Supermicro 370SSR motherboard, and we're seeing anomolous behaviour on those systems, and ONLY on those systems. On every other system we've used, dmesg shows all the information from the most-recent boot. On the supermicro systems, we may see the information from the last 3 boots! I see the lines: syncing disks... done Rebooting... and then we go right into the next boot. At present, one of the machines shows all the detail from 2.75 reboots. How and why is it doing this, and how do I make it stop? Thanks in advance, -Les -- Les Biffle Community Service... Just Say NO! (480) 778-0177[EMAIL PROTECTED] http://www.networksafety.com/ Network Safety, PO Box 14461, Scottsdale, AZ 85267 To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
ncftpd
ncftpd-2.6.3 i found this to panic the kernel under freebsd latest releases. I simple killall ncftpd just crashed the machinegonna try upgrading it see if that helps any. -- Forwarded message -- Date: Fri, 3 Aug 2001 15:48:08 -0700 (PDT) From: Dan [EMAIL PROTECTED] To: [EMAIL PROTECTED] Subject: kernel panics and ipfilter 1) Aug 3 15:41:15 www /kernel: panic: vm_page_remove(): page not found in hash Aug 3 15:41:15 www /kernel: seems box rebooted after that freebsd 4.3 release. 2) echo starting firewall kldload /modules/ipl.ko ipf -f /etc/ipf.rules another problems with this box is ipfilter.currently i enable the rules at startup by just kldloading the module basically and installing the ruleset.problem is when i take down ruleset and redo it, for some reason i cannot connect out anymore unless ruleset is completely removed. It is the exact same ruleset. THe only fix been this far is to just reboot the machine.i am starting to wonder if there is to much traffic to a box when you enable it right away that ipfilter maybe does not read them all. GOing to try a couple more things but if anyone has experieced this , some input would be most appreciated. -- Dan +--+ | BRAVENET WEB SERVICES | | [EMAIL PROTECTED] | | screen;cd /usr/src;make buildworld;cd ~ | | cp MYKERNEL /sys/i386/conf;cd /usr/src | |make buildkernel KERNCONF=MYKERNEL| |make installkernel KERNCONF=MYKERNEL;make installworld| +__+ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
hi
Hi, Thank god for small mercies! I loaded an older version of the kernel, and it worked! Basically, I was too worried to think before I wrote that last mail! Sorry for the trouble! Though any tips for my mistakes would be much appreciated:)) Anjali
[PATCH] [BIKESHED] Restarting from panic
I have the following simple and untested patch that I know a few people have asked for. It allows you to restart from a panic and continue executing rather than dumping to the disk and executing. This is remotely useful when doing kernel development when one adds an assertion that ends up being wrong or an assertion fails that isn't really critical in this case, thus, we want to continue executing. Granted, for some panics this can be quite dangerous as some assertions do things like make sure pointers aren't NULL before we dereference them. I'm aware that this is a very efficient foot-shooting implement with limited usefulness. To activate the feature, reset the panicstr variable to NULL from DDB and then do a continue. The panic function will then reset the panic state and bail out before calling boot(). The patch is at http://www.FreeBSD.org/~jhb/patches/panic.patch and included below: Index: kern_shutdown.c === RCS file: /usr/cvs/src/sys/kern/kern_shutdown.c,v retrieving revision 1.102 diff -u -r1.102 kern_shutdown.c --- kern_shutdown.c 2001/06/25 18:30:42 1.102 +++ kern_shutdown.c 2001/08/03 19:20:54 @@ -565,12 +565,17 @@ static char buf[256]; #ifdef SMP - /* Only 1 CPU can panic at a time */ - if (panic_cpu != PCPU_GET(cpuid) - atomic_cmpset_int(panic_cpu, NOCPU, PCPU_GET(cpuid)) == 0) { - for (;;) - ; /* nothing */ - } + /* +* We don't want multiple CPU's to panic at the same time, so we +* use panic_cpu as a simple spinlock. We have to keep checking +* panic_cpu if we are spinning in case the panic on the first +* CPU is canceled. +*/ + if (panic_cpu != PCPU_GET(cpuid)) + while (atomic_cmpset_int(panic_cpu, NOCPU, + PCPU_GET(cpuid)) == 0) + while (panic_cpu != NOCPU) + ; /* nothing */ #endif bootopt = RB_AUTOBOOT | RB_DUMP; @@ -596,6 +601,13 @@ #if defined(DDB) if (debugger_on_panic) Debugger (panic); + /* See if the user aborted the panic, in which case we continue. */ + if (panicstr == NULL) { +#ifdef SMP + atomic_store_rel_int(panic_cpu, NOCPU); +#endif + return; + } #endif boot(bootopt); } As Peter would say, *donning peril-sensitive sunglasses...* -- John Baldwin [EMAIL PROTECTED] -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc Power Users Use the Power to Serve! - http://www.FreeBSD.org/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
On Thu, 2 Aug 2001, mark tinguely wrote: The addressing use 64 bits for a memory pointer and the additional page indirection add to the overhead. The stickler is the MMU is still 32 bits. This means the PAE must segment the 64GB space into 4GB segments or 4 1GB segments. The OS must manage which pages are viewable to the process at this time. There's a better option. The application does this stuff itself, by mapping and unmapping SHM segments. This needs to be done anyway, since the application wouldn't be happy if the OS randomly remapped its address space to different pages ;)) There is a third mode of addressing using 2MB pages (simular to the 4MB page addressing mode for the 32 bit addressing scheme) that will only give a process access to 4GB of memory (not segmentable to a larger space, but can address physical memory located above the 4GB address). You can do that with 4kB pages too. Both the middle page directory and page table have 512 64-bit entries, so you can simply map 4kB pages from above the 4GB physical boundary... regards, Rik -- Executive summary of a recent Microsoft press release: we are concerned about the GNU General Public License (GPL) http://www.surriel.com/ http://www.conectiva.com/ http://distro.conectiva.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
keep-state rule for icmp, really stateful ???
Hi I have the following rule allowing traceroute and ping to my server. "200 allow icmp from any to any keep-state in recv tun0 icmptype 8" Now I wouldassume that this rule generate two dynamic rules back. The fire one is a rule that initiates ping to work properly it's just a dynamic ICMP rule 00200 2623 220332 (T 30, # 43) ty 0 icmp, 134.100.58.115 0 - 213.23.32.88 0 and the second that the traceroute UDP tafficfrom port33434-33960 can pass in. But what happans ... the rule 200 doesn't opena second dynamic rule to allow udp traffic to specific ports back in, the traceroute UDP traffic will be blocked. To keep the icmp packetfiltering stateful it would be nice to implement this clean. Or maybe it is already implemented in CURRENT tree. What's the current state ? greets Dennis
Select call gives EBADF
Hi, I am using select() call under HP-UX 10.20 for timing on socket. It throws the error EBADF. I don't understand why it happens. The socket is opened successfully before calling the select and the descriptor is valid. I will give the relevant code below. int mask; struct fd_set readmask ; readmask.fds_bits[0] = 0; struct fd_set readfds; int nfound, i; struct timeval timeout; mask = MASK(m_iSocket); readmask.fds_bits[0] |= mask; readfds.fds_bits[0] = readmask.fds_bits[0]; timeout.tv_sec = m_iSelectTimeout; timeout.tv_usec = 0; FD_ZERO(readfds); if ((nfound = select (SOCKETS, readfds, 0, 0, timeout)) == -1) { cerr ==Select call failed : endl; //Errror checking done ... } Thanks in advance Regards Ullasan To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
On Thu, 2 Aug 2001, Mike Smith wrote: Julian is on crack. DAC (Double Address Cycle) is a relatively recent addition to PCI that allows 32-bit cards with 64-bit savvy logic to talk to host memory using 64-bit target addresses. well day 1 was an exageration, but my 1995 PCI stuff already includes it. Crack? no.. optimism, maybe.. Older systems used a scatter-gather mechanism to present a virtualised view of the system's physical address space to the PCI bus (typically you'll see this in Alpha systems). To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
malloc
Hi, can anybody tell me in malloc what does third parameter DONTWAIT ,NOWAIT and WAITOK mean? Bcoz i have function being called using timeout.in that function i need to malloc a buffer. can i use WAITOK? please tell me abt this. TIA To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: cvsup updater failed
Mike Meyer wrote: Christoph Sold [EMAIL PROTECTED] types: - update the CVSup port (not the CVSup-bin port!) Warning about this one: you should consider updating from the package, not the port. If you update the port, you'll wind up installing a modula compiler system to install it (which is why cvsup-bin existed in the first place). If you do build the port, you'll want to set STATIC=yes as otherwise you'll need to keep the modula runtime libraries as well. The package avoids that by building STATIC. mike -- Mike Meyer [EMAIL PROTECTED] http://www.mired.org/home/mwm/ Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information. I just recently installed the package cvsup-16.1_1.tgz, which I think is the latest. Perhaps I did not look carefully enough -- I thought the file with the strange name was on the mirror and not on my system. All is well now. Thanks to everyone for the help. Randy To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: vnconfig + mount removes permission for a second
On Wed, Aug 01, 2001 at 11:35:32AM +, Julian Stacey wrote: So something is momentarily making the image unreadable. Should FreeBSD [mount/kernel ?] be changed to avoid denying access ? When you do a mount it automatically HUP's mountd which then re-exports NFS filesystems. I suspect what is happening is that the the filesystem mountlist is being cleared for a moment and that is upsetting the cp. You could try moving /var/run/mountd.pid out of the way and running the mount command. That should stop mount HUPing mountd, which would let you test this theory. David. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
Rik van Riel wrote: Only if you want to use it all within one process. No. It still bites you if you want to do IPC, etc., since you can not guarantee the structures used for this are all within the non-segmented region of memory. Wrong. Your process can have pages from all over the 64 GB mapped into its page tables. Try doing this with code pages in one segment, the stack in another, and the data being referenced in a third. It will not work. Each process has 3 GB of virtual memory mapped to any of the pages of the 64 GB of physical space. Like I said before, this is not useful. The only marginal use for such a thing is for implementing an L3 cache in software, or for implementing multiple virtual machines on one box. Only the FreeBSD memory management subsystem doesn't support it (yet?). It's not a question of supporting it, it's a question of whether or not it's a useful idea at all. I have yet to see one person using it for anything. So far, it is nothing more than marketing fodder: I haven't seen one motherboard capable of more than 4G worth of SIMMs. I've seen a bunch of the machines. They're rather popular with the database folks. Name an OS that supports this; more than likely, you will have to appeal to a purpose built embedded system. Problem is that you'll have to fit all of FreeBSD's VM data structures in the 2GB of KVA. This just isn't going to fit with the size the data structures have today ... So it's not unreasonable to think of putting 8G or 16G in a box, and being able to map it all. You can never map it all, since your virtual address space is limited to 4GB... Overlays. A technology from the dawn of time, I know, but so are segment registers. Basically the database folks are really keen on keeping their 3GB user addressable memory, so the kernel will remain limited to 1GB of KVA. They shouldn't care, since they are getting more memory. On the really large machines, this can lead to the situation where even the page tables hardly fit into KVA. 4MB pages seem like the only solution ... This is why we use 64 bit processors for really large machines, and we say that 36 bit address spaces are really pretty useless, and will be obsolete by the time the code is complete, because of ia64 being a cheaper and faster soloution. 8-p. 36 bits only gives you 2^4 * 4G, or 64G, anyway, and it is hardly worth the segment thrashing and instruction and data cache shootdowns to be able to handle it. You are better off throwing 16 machines at the problem: your major cost item is going to be memory, anyway, and getting 64G in one box is going to cost you significantly more than just putting together multiple boxes. If the locality is such that 2G per process is OK, you might as well be on seperate boxes with non-segmenet swapped memory. (well, there's also the mess of shared page tables, but nobody is keen on the locking issues those imply) It's much, much worse than that. Like I said before, you could do it pretty trivially, but the expense of doing it will be so high, relatively, that you might as well buy an Alpha or PA-RISC box and call it a day, if you need it now, or just wait for IA64, rather than throwing developement effort into something that will end up in a scrap heap before it gets reasonable performance, or perhaps before it's even deployed. -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Page Coloring
If I added this to a man page would I be telling the truth :). Note, these are my notes and not the exact text that I would add, and I have not bother with anything to do with object coloring etc. I just want to make sure I've got this part down. Chad page coloring --- The general idea behind page color is to prevent the L2 cache from dumping pages in use for any given object when it loads the next required page. To start with you have to consider how the L2 addresses pages. If the L2 is 64k, to choose an easy number, then it can address at most 16 pages. If each page is 4096 bytes, then the first twelve bits of the address do not affect the page, but instead the contents of the page. The next four bits specifiy the page number, and the remaining sixteen bits can be ignored. u - unused. p - page number. b - page bytes. b or 0xFBBB pbbb Note: only bits 13 - 16 affect L2 page addressing (256k L2). If the first page of an object is at 0x0A00F000 then the L2 will see page number 16 (0xF or b). If the second page of an object is at 0x0B00F000 the the page number will colide with the first page, and the first page will be removed from the L2 cache. If on the other hand the second page was allocated at 0xB00A000 then its page number would be 0xA and the first page would remain in the cache. FreeBSD creates as many colors as there are pages in the L2 cache, and then breaks up the physical memory as vm_pages are added into the various colors. When a object requests a new page, it asks for a pages of the color of the pages index into the object (there is a little more to it, but in general that is what it does). So page 1 would ask for color 1, page 2 would ask for color 2 and so on. Page coloring is calculated as follows: m-pc = (pa PAGE_SHIFT) PQ_L2_MASK pa = physical address PAGE_SHIFT = 12 (LOG2 page size = 4096) PQ_L2_MASK = PQ_L2_SIZE - 1 (let PQ_L2_SIZE = 64) let pa = 0x00FF m-pc = (0x00FF 12) 0x003F m-pc = 0x0FF0 0x003F m-pc = 0x0030 The page queue that a page is on is the queue number plus the page color. If the page is on the free queue then m-queue = PQ_FREE + m-pc. To determine the base queue you simple subtract the page color. The following is often seen in the code: if ((m-queue - m-pc) == PQ_FREE) {..}. A given page color will be used every PQ_L2_SIZE pages where PQ_L2_SIZE is the PQ_CACHESIZE (L2 cache size) divided by the page size (4096). So on a machine with a 256K L2 cache PQ_L2_SIZE would be 64. vm_page_queue cnt initializations (vm_page.h, vm_pageq.c) --- For a 64k L2 Cache (PQ_L2_SIZE = 16) 0 N 16 F 32 C 1 F 17 I 33 C 2 F 18 A 34 C 3 F 19 C 4 F 20 C 5 F 21 C 6 F 22 C 7 F 23 C 8 F 24 C 9 F 25 C 10 F 26 C 11 F 27 C 12 F 28 C 13 F 29 C 14 F 30 C 15 F 31 C Note: As this is layed out any reference to PQ_FREE or PQ_CACHE must be relative to the page color, while PQ_ACTIVE, PQ_INACTIVE, and PQ_NONE must not be. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
No The space is linear in physical space and if you have PCI/64 capable devices they can access it all too. (In fact 64 bit addresses have been supported even in 32 bit wide PCI since day 1). On Thu, 2 Aug 2001, Kenneth Wayne Culver wrote: BUT, don't the motherboards also have to support this? And isn't it only supported through some wierd segmentation thing? KEn On Thu, 2 Aug 2001, John Baldwin wrote: On 02-Aug-01 Kenneth Wayne Culver wrote: Also, the PIII CAN'T natively support more than 4GB of ram. If a particular PIII motherboard supports this, then it's using some kind of wierd chipset that allows this to happen. 4GB is the limit with a 32 bit chip I believe; and the PIII is a 32-bit chip. Ken Go look at some Intel docs. P6 chips since the Pentium Pro (yes, before Pentium II) have supported PAE which allows for a 36-bit physical address. -- John Baldwin [EMAIL PROTECTED] -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc Power Users Use the Power to Serve! - http://www.FreeBSD.org/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: kern/29423: [PATCH] kernel security hooks implementation
Hey, Just wanted to send a message to hackers about my project, to find any suggestions, etc. You can access the actual PR at http://www.freebsd.org/cgi/query-pr.cgi?pr=29423 Description: Kernel Security Hooks provide a standard interface for programmers of kernel security extensions to intercept system calls and other functions. Before, programmers had to wrap the system call with their own system call, resulting in two copyins. PRFW, the kernel security hook patch I am addressing in this PR, provides a standard interface for these uses. It also provides per-pid restrictions, so process X might not be able to use setuid but process Y might, depending on what restrictions you write. I have also written a brief howto at http://www.sekt7.org/~ems/prfw.howto You can also download the patch at http://www.sekt7.org/~ems/patch Quick installation: cd /usr/src patch -p patch I'm pretty much a kernel newbie, but this is certanly a large achievement for me, to code all this, so take pity, I'm sure my code has problems, but I've tested it and it has worked beautifully. Note: this only works on i386 platform due to a change to i386/i386/trap.c Thanks, - Evan S System: 5.0-CURRENT Patch: diff -c -r --new-file /usr/src/sys/sys/jailuser.h src/sys/sys/jailuser.h *** /usr/src/sys/sys/jailuser.h Wed Dec 31 19:00:00 1969 --- src/sys/sys/jailuser.h Fri Aug 3 16:25:51 2001 *** *** 0 --- 1,97 + /* + * Copyright (c) 2001 Evan M. Sarmiento + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modifcation, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must maintain the above copyright + *notice, this list of conditions and the following disclaimer: + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ''AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE. EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + + #ifndef _SYS_JAUSR_H_ + #define _SYS_JAUSR_H_ + + #include sys/queue.h + #include sys/syscall.h + #include sys/types.h + + + + struct prfw_usr { + pid_t pid; + int pr_securelevel; + }; + + #ifndef _KERNEL + int prfw_printstat __P((pid_t *, char *, struct prfw_usr *)); + + #else + + #ifdef MALLOC_DECLARE + MALLOC_DECLARE(M_USRJAIL); + MALLOC_DECLARE(M_PRFW); + #endif + + #define ALL 1 + #define ALLBR 2 + #define ALLPR 3 + #define prfw_sl p-p_ucred-cr_prfw-pr_securelevel + + #define IS_PRFW p-p_ucred-cr_prfw + #define IS_RES(x) (x)-p_ucred-cr_prfw + + #define prfw_operation(sl, synum) +(p-p_ucred-cr_prfw-prfw_syscall_ind[synum]-operations[sl])(p, uap) + #define prfw_operation_a(sl, synum) +(p-p_ucred-cr_prfw-prfw_syscall_ind[synum]-operations[sl])(p, args) + #define prfw_operation_p(sl, synum, p) +((p)-p_ucred-cr_prfw-prfw_syscall_ind[synum]-operations[sl])(p, NULL) + #define prfw_operation_all(sl, synum, rrp) +((rrp)-prfw_syscall_ind[synum]-operations[sl])(p, args) + + struct prfw_krn { + pid_t pr_uid; + int pr_securelevel; + struct prfw_syscall_r *prfw_syscall_ind[SYS_MAXSYSCALL]; + }; + + struct prfw_all_res { + int ex_root; + int sl; + struct prfw_syscall_r *prfw_syscall_ind[SYS_MAXSYSCALL]; + }; + + struct prfw_syscall_r { + int num; + int (*operations[3])(p, uap); + + }; + + + + int prfw_setflags__P((int , pid_t, int)); + int prfw_inject_fp __P((int , int, pid_t , int (*fp)(p, uap))); + int prfw_sy_initres __P((struct prfw_syscall_r *sy_index[])); + int prfw_default_handler __P((struct proc *, void* uap)); + pid_t prfw_chproc __P((struct proc *)); + struct prfw_all_res * prfw_ret_all __P((void)); + int prfw_free__P((pid_t, struct prfw_all_res *, int)); + #endif /* !_KERNEL */ + #endif /* !_SYS_JAUSR_H_ */ + + + + diff -c -r --new-file /usr/src/sys/sys/ucred.h src/sys/sys/ucred.h *** /usr/src/sys/sys/ucred.hFri May 25 12:59:10 2001 --- src/sys/sys/ucred.h Fri Aug 3 16:26:00 2001
Allocate a page at interrupt time
FreeBSD can not allocate from the PQ_CACHE queue in an interrupt context. Can anyone explain it to me why this is the case? Thanks, -Zhihui To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
REMINDER: FreeBSD Monthly Development Status Report -- Request For Submissions (fwd)
Just a final reminder that status reports are due tomorrow afternoon, please submit your reports ASAP so as to make sure they get included. Just as a reminder, this is a request for status for on-going and completed projects since the last status report, and can include both raw software development and other things that might be going on. Things don't have to be merged into -STABLE for it to count, it can be shoot yourself in the foot-style status from -CURRENT. Things I haven't received status reports on: - KSE - SMPng - OpenSSL - OpenSSH - KerberosV work - KAME - The kernel summit at USENIX These are all important things that are going on in the project, and we'd like to let the world that we're doing this cool stuff. Robert N M Watson FreeBSD Core Team, TrustedBSD Project [EMAIL PROTECTED] NAI Labs, Safeport Network Services -- Forwarded message -- Date: Sat, 28 Jul 2001 18:26:31 -0400 (EDT) From: Robert Watson [EMAIL PROTECTED] To: [EMAIL PROTECTED], [EMAIL PROTECTED] Subject: FreeBSD Monthly Development Status Report -- Request For Submissions It's that time again! The last FreeBSD Development Status report was over a month ago, and given its success, we'll try it again this month. As with the previous edition, I'm interested in seeing about one paragraph per on-going project (or for major projects, a paragraph for each major component of the project) describing work that has happened since the last report. If no prior report has been given for the project, a general overview paragraph as well as status is acceptable. If more than one person is working on a project, only a single report should be submitted (although if there are reports for components, they might be seperately submitted by the relevant developers). Take a look at the previous month's report for a sense of how this works (in particular, see how TrustedBSD and SMPng reports were broken out). Developers should feel free to submit more than one report, if they are working on more than one project. Reports should relate to the FreeBSD Project, but are not limited to software development: they could include documentation work, web work, FreeBSD.org cluster management, cooperation with application developers, public relations activities, partnering with companies, funding announcements for new projects, etc. In the past report the primary focus was development, and that will remain important to the status report, of course, but other parts of the FreeBSD Project are welcome to submit status! Please submit reports in the following format: Project: (name here -- required) URL: (URL, if any, here -- omit line if none) Contact: (name and e-mail address of a contact point -- required) One paragraph on the topic of the project status since the last report, indented two spaces, and wrapped before column 78. Plain text only, please. Please send submissions to: [EMAIL PROTECTED] The deadline for submissions is Friday August 3, 2001, at 3:00pm EST. The report will be released soon thereafter. Robert N M Watson FreeBSD Core Team, TrustedBSD Project [EMAIL PROTECTED] NAI Labs, Safeport Network Services To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
Also, the PIII CAN'T natively support more than 4GB of ram. If a particular PIII motherboard supports this, then it's using some kind of wierd chipset that allows this to happen. 4GB is the limit with a 32 bit chip I believe; and the PIII is a 32-bit chip. Ken On Thu, 2 Aug 2001, Rik van Riel wrote: On Wed, 1 Aug 2001, Terry Lambert wrote: craig wrote: I know PIII can support 64G physical memory. In FreeBSD how can I visit such range memory(4G-64G) ? The short answer is you can't. The longer answer is that you end up having to window it using segmentation; Only if you want to use it all within one process. You can have multiple 2 GB (that's the maximum process size in FreeBSD, right?) programs at the same time, happily using all physical memory. Only the FreeBSD memory management subsystem doesn't support it (yet?). This basically means that the memory is useless as a DMA target or source for disk controllers or gigabit ethernet cards, and is pretty useless for swap, ... So for limited uses in data intensive applications, it might be usable, And for those data intensive applications, it is very useful indeed... But to directly answer your question: by rewriting much of the low core virtual memory and page mapping handling code to know about segmentation. Not just that. There is a more insidious problem with the FreeBSD VM code and support of huge machines. The part of handling the PAE extended page table format and mapping high memory pages in and out of KVA (kernel virtual address) memory to copy stuff is easy. Problem is that you'll have to fit all of FreeBSD's VM data structures in the 2GB of KVA. This just isn't going to fit with the size the data structures have today ... So in order to support huge memory machines right, you'd have to put a number of FreeBSD's VM data structures on a rather strict diet. regards, Rik -- Executive summary of a recent Microsoft press release: we are concerned about the GNU General Public License (GPL) http://www.surriel.com/ http://www.conectiva.com/ http://distro.conectiva.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: 6G memory disks?
David Gilbert wrote: I suppose a 6G md memory disk is impossible? I recently applied all the patches recomended here and even got a 6G memory disk newfs'd and mount'd ... but when I ran bonnie (with size 100M) on it, it failed. AFAIR FreeBSD will address ony 4G of RAM, which is typically split into 3G user and 1 G kernel area. HTH -Christoph Sold To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
On Thu, 2 Aug 2001, Terry Lambert wrote: Rik van Riel wrote: Only if you want to use it all within one process. No. It still bites you if you want to do IPC, etc., since you can not guarantee the structures used for this are all within the non-segmented region of memory. Wrong. Your process can have pages from all over the 64 GB mapped into its page tables. Try doing this with code pages in one segment, the stack in another, and the data being referenced in a third. It will not work. Of course it cannot work. The segments you refer to will map to the linear 4GB space represented by the page tables. Those page tables can map, in their 4GB virtual space, pages from all over the 64GB physical space. I've seen a bunch of the machines. They're rather popular with the database folks. Name an OS that supports this; more than likely, you will have to appeal to a purpose built embedded system. Linux SCO Unix NT *cough* So it's not unreasonable to think of putting 8G or 16G in a box, and being able to map it all. You can never map it all, since your virtual address space is limited to 4GB... Overlays. A technology from the dawn of time, I know, but so are segment registers. s/You can never map it all/You can never map it all at once/ Happy now? ;) Basically the database folks are really keen on keeping their 3GB user addressable memory, so the kernel will remain limited to 1GB of KVA. They shouldn't care, since they are getting more memory. You're telling the people working with 50GB datasets that they shouldn't care about how many of their 512MB segments they can map in at once? ;) or just wait for IA64, rather than throwing developement effort into something that will end up in a scrap heap before it gets reasonable performance, or perhaps before it's even deployed. Ssssh, don't tell that to the folks who are using such machines today ;) cheers, Rik -- Executive summary of a recent Microsoft press release: we are concerned about the GNU General Public License (GPL) http://www.surriel.com/ http://www.conectiva.com/ http://distro.conectiva.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: problems with kvm_nlist()
As Ian Dowse pointed out, it is not a problem with kvm_nlist(), but with my program (line 75, character 65 should be an i, not a 0). Sorry. Now that that is taken care of, would somebody mind explaining to me what n_value represents? Is it an offset in kernel memory to retrieve the actual data? Thank You, Tabor Kelly On Friday, August 03, 2001, 2:16:17 PM, Tabor wrote: I am using kvm_nlist() in one of my programs. I have written a smaller test program for use here. Either kvm_nlist() has a bug or I am very confused. According to kvm_nlist(3), kvm_nlist should go through an array of nlist structures and fill out each structure with that symbol's information. Well, as far as I can tell, it fills out all of the structures with the information from the symbol in the first structure. Has anybody else seen this behavior? Attached is a file named test.cpp that should reproduce this behavior. If you want to play with this behavior, change what structure is pointed to when calling kvm_nlist on line 38 of the program source. Also, be aware that you will have to make the following modifications to the file permissions after you compile it (if you don't want to run it as root): # chown root:kmem a.out # chmod g+s a.out Thank You, Tabor Kelly To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
RE: How to visit physical memory above 4G?
On Thu, 2 Aug 2001, Charles Randall wrote: From: Terry Lambert [mailto:[EMAIL PROTECTED]] I have yet to see one person using it for anything. So far, it is nothing more than marketing fodder: I haven't seen one motherboard capable of more than 4G worth of SIMMs. The Dell PowerEdge 6450 supports 8 GB of RAM. http://www.dell.com/us/en/biz/products/model_pedge_pedge_6400.htm It's all a trick, they don't really exist. After all, why would people ever shell out the money for one of these useless beasts that won't be running until ia64 has gotten cheaper than these machines ? Rik -- Executive summary of a recent Microsoft press release: we are concerned about the GNU General Public License (GPL) http://www.surriel.com/ http://www.conectiva.com/ http://distro.conectiva.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Ypbind and network flooding
Hi: Has there been any resolution to the problem where ypbind whacks out and starts flooding the network, as described in the following message in questions? http://www.FreeBSD.org/cgi/getmsg.cgi?fetch=741568+744589+/usr/local/www/db/text/2001/freebsd-questions/20010318.freebsd-questions -- Robert Withrow -- (+1 978 288 8256, ESN 248) [EMAIL PROTECTED] To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
You have WON your FREE nights!!!
English Español Escape to Paradise...! El Rancho Villas Mazatlan, Mexico Dear Friend: You've been selected to take 1 night free for each one you pay in our resort at Mazatlan, Mexico. That's right !! Pay 1 night and get another one FREE!! This opportunity goes to only selected people, so take advantage of this unique offer you'll never see again a lodging offer like this one. Your next vacation half the price!! Why don't you take a rest in the wonderful beach of Mazatlan, Mexico. This is your opportunity. Make it possible for you. If you use this wonderful opportunity, I'll also give you a 20% discount over drinks and food in our restaurant. The delicious flavors you're will taste there are going to be unforgettable, believe me! I send you our addresses for more information, just in case you are interested in the offer I'm sending you. If you want to use this benefit, please refer the code below to make this offer valid: fRpromo0802 Promotion Validity: from Aug 15 to Dec. 15, 2001; excluding Thanksgiving week. Web Sites: www.elrancho.com.mx www.elranchovillas.com e-mail: [EMAIL PROTECTED] Reservations: Tel: (1)716-0606 Fax: (1)716-9777 US Canada: 1-888-596-5760 Mexico: 01-800-717-1991 To be removed from our mailing list, please send us a blank email to [EMAIL PROTECTED] with the word REMOVE in the subject line. Escapa al paraíso...! Villas El Rancho Mazatlán, México Hola amigo: Haz sido seleccionado para llevarte una noche gratis por cada una que pagues a nuestro hotel en Mazatlán, México. Es en serio !! Paga 1 noche y te llevas otra totalmente GRATIS!! Esta oportunidad se da sólo a personas muy selectas, asi que aproveche esta única oferta. Jamás vera una oferta igual en lo que a alojamiento se refiere. Sus próximas vacaciones por la mitad de precio!! Por qué no tomar un descansito en las maravillosas playas de Mazatlán, México. Esta es su oportunidad. Hágala posible por usted. Es más, si usted hace uso de esta increíble oportunidad, además le regalo un 20% de descuento en alimentos y bebidas en nuestro restaurante. Los sabores delicios que probara ahí, serán inolvidables, créame! Para más información, le mando nuestras direcciones electrónicas, sólo en el caso de que se interese por la oferta que le he hecho. Si quiere usar el beneficio, por favor indique el codigo que sigue para hacer válida esta oferta: fRpromo0802 Vigencia de la promoción: de Agosto 15 a Diciembre 15 del 2001; se excluye la semana de Thanksgiving (Festividad en EE.UU.) Web Sites: www.elrancho.com.mx www.elranchovillas.com e-mail: [EMAIL PROTECTED] Reservaciones: Tel: (1)716-0606 Fax: (1)716-9777 México: 01-800-717-1991 US Canada: 1-888-596-5760 Para ser removido de nuestra lista de correo, por favor envíenos un email en blanco a la siguiente
Re: vnconfig + mount removes permission for a second
In message [EMAIL PROTECTED], David Malone writes: When you do a mount it automatically HUP's mountd which then re-exports NFS filesystems. I suspect what is happening is that the the filesystem mountlist is being cleared for a moment and that is upsetting the cp. Yes, the mountd-kernel interface for updating export lists is a bit stupid; you have to clear all exports and then add each allowed host/net one by one. Any NFS requests that come in after the exports have been deleted but before the entries have been re-added will get rejected. See PRs misc/3980 and kern/9619 for more details. I think NetBSD tried at one point to make mountd incrementally change the export list, but it turned out to be quite hard to get the logic right to keep the mountd and kernel lists in sync. I think they reverted that change eventually. This is certainly a bug that needs to be fixed; mountd should be able to build up a list of all exports for a filesystem and pass them into the kernel in one replace export list operation. Maybe nice'ing mountd to run at a higher priority, and/or specifying only IP addresses in /etc/exports would help things a bit now. Ian To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
No The space is linear in physical space and if you have PCI/64 capable devices they can access it all too. (In fact 64 bit addresses have been supported even in 32 bit wide PCI since day 1). OK, then what was that whole paging thing everyone was talking about, I thought that was partially done in hardware on the chipset of the motherboard... or was that completely in the operating system? Julian is on crack. DAC (Double Address Cycle) is a relatively recent addition to PCI that allows 32-bit cards with 64-bit savvy logic to talk to host memory using 64-bit target addresses. Older systems used a scatter-gather mechanism to present a virtualised view of the system's physical address space to the PCI bus (typically you'll see this in Alpha systems). -- ... every activity meets with opposition, everyone who acts has his rivals and unfortunately opponents also. But not because people want to be opponents, rather because the tasks and relationships force people to take different points of view. [Dr. Fritz Todt] V I C T O R Y N O T V E N G E A N C E To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
On Thu, 2 Aug 2001, Terry Lambert wrote: Original poster said he was working on it for Linux, which means it's not done, which means not Linux. It's been running for a while now, integrated in the 2.4 kernel. The way Linux manages to avoid the horrors you describe is by simply not letting the kernel use more than its 1GB (or 2GB) of KVA. No special tricks to make the kernel use more memory, let it go on a diet instead. FWIW, on the Linux has it, so FreeBSD should have it arguments: If all your friends jumped off a cliff... Fully agreed, but as long as you don't do any weird tricks trying to let the kernel itself use more memory, it's not at all like jumping from a cliff ... Rik -- Virtual memory is like a game you can't win; However, without VM there's truly nothing to lose... http://www.surriel.com/ http://distro.conectiva.com/ Send all your spam to [EMAIL PROTECTED] (spam digging piggy) To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: NewCard / pccbb
Hi, BTW the pir output for a TECRA8000 looks like: $PIR table at 0x3812a1e0 version 1.0 PCI interrupt router at 0:2.8 vendor 0x8086 device 0x122e PCI-only interrupts [ ] entry bus slot device 00: 00 0011 INTA 60 [ 11] INTB 61 [ 11] INTC 00 [ ] INTD 00 [ ] 01: 00 0009 INTA 62 [ 11] INTB 00 [ ] INTC 00 [ ] INTD 00 [ ] 02: 00 0004 INTA 62 [ 11] INTB 63 [ 11] INTC 00 [ ] INTD 00 [ ] 03: 00 0013 INTA 63 [ 11] INTB 00 [ ] INTC 00 [ ] INTD 00 [ ] 04: 00 0005 INTA 00 [ ] INTB 00 [ ] INTC 00 [ ] INTD 63 [ 11] 05: 00 0106 INTA 62 [ 11] INTB 63 [ 11] INTC 60 [ 11] INTD 61 [ 11] Bye! Michael Reifenberger ^.*Plaut.*$, IT, R/3 Basis, GPS To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
On Thu, 2 Aug 2001, Terry Lambert wrote: Correct me if I'm wrong, and 64 bit PCI cards can in fact DMA at offsets above 4G, in the physical address space... They can. And for 32 bit PCI cards you simply use bounce buffers in the same way you handle ISA bounce buffers. It's ugly, but if you have a huge dataset it's better than getting the data from disk. Rik -- Virtual memory is like a game you can't win; However, without VM there's truly nothing to lose... http://www.surriel.com/ http://distro.conectiva.com/ Send all your spam to [EMAIL PROTECTED] (spam digging piggy) To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: cvsup updater failed
Christoph Sold [EMAIL PROTECTED] types: - update the CVSup port (not the CVSup-bin port!) Warning about this one: you should consider updating from the package, not the port. If you update the port, you'll wind up installing a modula compiler system to install it (which is why cvsup-bin existed in the first place). If you do build the port, you'll want to set STATIC=yes as otherwise you'll need to keep the modula runtime libraries as well. The package avoids that by building STATIC. mike -- Mike Meyer [EMAIL PROTECTED] http://www.mired.org/home/mwm/ Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
Terry Lambert wrote: Rik van Riel wrote: Only the FreeBSD memory management subsystem doesn't support it (yet?). It's not a question of supporting it, it's a question of whether or not it's a useful idea at all. I have yet to see one person using it for anything. So far, it is nothing more than marketing fodder: I haven't seen one motherboard capable of more than 4G worth of SIMMs. Every box based on the Intel Saber board is capable of up to 16G. I've seen a bunch of the machines. They're rather popular with the database folks. Name an OS that supports this; more than likely, you will have to appeal to a purpose built embedded system. UnixWare (A.K.A. OpenUNIX). As far as I understand, Oracle maps in the pieces of SGA as it needs them, keeping the total mapped size under 3G. -SB To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: Wierd IRQ Routing issues
Both boxes are -current :) Thanks Andrew On Thu, 2 Aug 2001, Peter Pentchev wrote: On Thu, Aug 02, 2001 at 10:01:25PM +0200, lists wrote: Hi, hoping someone can help me out with something here, because Ive got a very strange problem. On my one pc, when assigning an IRQ to my PCIC device, it assigns an IRQ and continues, works 100% now that I changed device.hints to look for pcic on pci instead of isa, card works everything. However, on my other pc with an identical setup, when trying to assign pcic irq it does this: (from dmesg): pci_cfgintr_search: linked (3) to configured irq 10 at 0:9:0 pci_cfgintr: 0:10 INTA routed to irq 10 Now for some reason I have it in my head that that irq routing is broken, because its the only difference I can find between the non-working box and the working box. Is there any way that I can force that card to not use a routed interrupt like that. Ive already tried fiddling in my bios with the IRQ settings to reserve things etc, no luck there either. I know for a fact that irq 5/7/9/10/11 are all available on my box, with nothing taking them. Any ideas would be MUCH appreciated The second box wouldn't be a -stable machine, would it now? I think PCIC IRQ routing was absolutely not working in -stable as of a few weeks ago, when Warner Losh started MFC'ing the PCIC bits. That MFC might not be complete yet. If both boxes are running -current, I'll just shut up :) G'luck, Peter -- This would easier understand fewer had omitted. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
RE: proprietary extensions to tcp/ip?
theres a problem if this should happen. most internet providers use unixes for login. since linux, bsd etc. wont be able to use tcp/ms microsoft would be used and i think that this could happen but there will stay some unix providers like in the old days with slip, and so the current internet would remain to the unixes or at least there will be some tunneling so the old unix driven ip internet will be connected to the microsoft driven micronet. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: Does /dev/bpf work with kevent?
On Fri, Aug 03, 2001 at 01:51:20PM -0400, Garance A Drosihn wrote: [.../dev/bpf...kevent...EAGAIN...] Are you trying this on current or stable? current has a bug fix to bpf which still hasn't been merged to stable. 4.3-RELEASE, and 4.3-STABLE To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: 303,000 routes in kernel
The box does have a default route, and is not getting proxy arps from the next hop router, right? -- Leo Bicknell - [EMAIL PROTECTED] Systems Engineer - Internetworking Engineer - CCIE 3440 Read TMBG List - [EMAIL PROTECTED], www.tmbg.org To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: PR 25958
Nate Dannenberg wrote: I'd be glad to, however I no longer run FreeBSD. I have since switched to Linux. [ ... ] Not being much of a C programmer anymore I can't really say for certain though :) Are these two statements related by cause and effect? No :) When I put that patch together (as said in the original PR) most of the help came from others who knew C pretty well. I'd forgotten most of my own C skills long before I ever got my first PC :) (I learned C in college, but never managed to put that skill to any use, at the time all I had was a Commodore 128 as my only computer. On that platform, C wasn't a very viable choice against 6502 assembly :-) -- _ ___ ___ | [EMAIL PROTECTED]//ZZ]__ | | C64/C128/SCPU |'/ |Z/ | | What's *YOUR* Hobby!? | \__|_\ | |_\___]___| To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: problems with kvm_nlist()
In message [EMAIL PROTECTED], Tabor Kelly writes: Now that that is taken care of, would somebody mind explaining to me what n_value represents? Is it an offset in kernel memory to retrieve the actual data? It is the kernel virtual address of the symbol that you specified in n_name, which will be the same as an in-kernel pointer value (e.g. something like 0xc0123456). This address has no meaning in userland, but libkvm provides a kvm_read() function that does all the magic necessary to read from the kernel memory at this address. There are lots of examples of code using the libkvm interface in the FreeBSD source tree (fstat, ps, vmstat, pstat etc.) although many of these now use sysctl to retrieve values instead. Briefly, you just kvm_read the value of the variable whose symbol address you have found, e.g. something like the code below, but you'll want to add code to deal with any errors that the kvm_* calls might return. struct nlist nl[] = { {nextpid}, {NULL}, }; int nextpid; kd = kvm_openfiles(...); kvm_nlist(kd, nl); kvm_read(kd, nl[0].n_value, nextpid, sizeof(nextpid)); printf(nextpid is %d\n, nextpid); Ian To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: PR 25958
On 02-Aug-01 Nate Dannenberg wrote: On Thu, 2 Aug 2001, John Baldwin wrote: Nate, Can you try out the patch at http://www.freebsd.org/~jhb/patches/mtrr.patch? I'd be glad to, however I no longer run FreeBSD. I have since switched to Linux. While FreeBSD was stable and reliable on my machine, I found that support for it was lacking in things like multimedia (playing movies, watching TV, and so on). Ok. You do know that 'fxtv' is developed on FreeBSD, right? :) My TV _is_ my workstation. :) Granted, I don't think you can watch DVD's on FreeBSD very easily. I can say though that the MTRR problem is definitely a bug - under Linux MTRR's cause no trouble at all. Are you sure it's using them? :) -- John Baldwin [EMAIL PROTECTED] -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc Power Users Use the Power to Serve! - http://www.FreeBSD.org/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: Wierd IRQ Routing issues
Bios is different, everything else is the same, about to go and swap out the motherboard to something that does work due to desperation :) Yeah thats the wi0 timeout machine, the other machine doesnt do a pci_cfgintr_search or an irq routing, it does a hard assignment by the looks of things, not sure why that is Andrew On Fri, 3 Aug 2001, Warner Losh wrote: In message [EMAIL PROTECTED] lists writes: : However, on my other pc with an identical setup, when trying to assign : pcic irq it does this: (from dmesg): How identical? Is the BIOS the same? : pci_cfgintr_search: linked (3) to configured irq 10 at 0:9:0 : pci_cfgintr: 0:10 INTA routed to irq 10 Looks good to me. : Now for some reason I have it in my head that that irq routing is broken, Maybe. Is this the wi0 timeout machine? : Any ideas would be MUCH appreciated I'm not sure what's going on here. :-( Warner To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
Rik van Riel wrote: BUT, don't the motherboards also have to support this? And isn't it only supported through some wierd segmentation thing? Yes, the mainboard needs to support the memory. No, there is no weird segmentation thing, at least not visible from software. Last time I looked, the kernel was software... -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: Wierd IRQ Routing issues
One machine (the working one) is set to pnp os, my machine doesnt have an option to set it in the bios (the machine that doesnt work) Cheers Andrew On Fri, 3 Aug 2001, Warner Losh wrote: In message [EMAIL PROTECTED] lists writes: : Yeah thats the wi0 timeout machine, the other machine doesnt do a : pci_cfgintr_search or an irq routing, it does a hard assignment by the : looks of things, not sure why that is PNP OS yes vs no? Wanrer To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
RE: How to visit physical memory above 4G?
From: Terry Lambert [mailto:[EMAIL PROTECTED]] I have yet to see one person using it for anything. So far, it is nothing more than marketing fodder: I haven't seen one motherboard capable of more than 4G worth of SIMMs. The Dell PowerEdge 6450 supports 8 GB of RAM. http://www.dell.com/us/en/biz/products/model_pedge_pedge_6400.htm If I understand your comments in a few follow-up messages correctly you're saying that this effort may be better spent by working on an IA-64 port and making it support large memory configurations? Can you elaborate? -Charles To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
cvsup updater failed
Updating collection ports-all/cvs Updater failed: /usr/ports/www/jakarta-tomcat/files/#cvs.cvsup-25588.1: Cannot create: Not a directory To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: Wierd IRQ Routing issues
In message [EMAIL PROTECTED] lists writes: : Yeah thats the wi0 timeout machine, the other machine doesnt do a : pci_cfgintr_search or an irq routing, it does a hard assignment by the : looks of things, not sure why that is PNP OS yes vs no? Wanrer To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
Terry Lambert wrote: This basically means that the memory is useless as a DMA target or source for disk controllers or gigabit ethernet cards, and is pretty useless for swap, if you ever have to copy from one section to another (e.g. for IPC, SYSV shared memory, mmap'ed files, VM, or buffer cache, etc.). For the PCI cards supporting the 64-bit addresses you can. (Note that in PCI support of the 64-bit bus is independent of the 64-bit address space, the 64-bit addresses can be multiplexed over a physically 32-bit bus). -SB To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
Julian Elischer wrote: No The space is linear in physical space and if you have PCI/64 capable devices they can access it all too. (In fact 64 bit addresses have been supported even in 32 bit wide PCI since day 1). It's been my experience that the TIGON cards take a 32 bit DMA target address, not a 64 bit DMA target address, and that the 54 bit width was only used for the data transfer, not for the address offset. Correct me if I'm wrong, and 64 bit PCI cards can in fact DMA at offsets above 4G, in the physical address space... -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
On Thu, 2 Aug 2001, Kenneth Wayne Culver wrote: Also, the PIII CAN'T natively support more than 4GB of ram. If a particular PIII motherboard supports this, then it's using some kind of wierd chipset that allows this to happen. 4GB is the limit with a 32 bit chip I believe; and the PIII is a 32-bit chip. The Xeon series have 32 bits of virtual address space and 36 bits of physical address space. Rik -- Executive summary of a recent Microsoft press release: we are concerned about the GNU General Public License (GPL) http://www.surriel.com/ http://www.conectiva.com/ http://distro.conectiva.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Does /dev/bpf work with kevent?
I'm attempting to use kevent with /dev/bpf to check to see if it is ready for reads, but it seems to always return ready to read, but the reads get EAGAIN. Does /dev/bpf not work with kevent? Or should I look elsewhere for my bug (like forgetting some random ioctl)? If you can't use /dev/bpf can ng_bpf and ng_socket somehow be used? Any examples of either, or both laying around somewhere? (I've never used the netgraph stuff before -- as cool as netgraph looks I haven't had the need) To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
select kevent aio_read
Hello, I am new to this level of programming so please bare with me. I am curious as the differences between kevent and select and when to use either one. After reading the man pages, they seem to provide about the same functionality. What advantages do each have, and why would one choose one over the other? Also I am confused as to the purpose of aio_read and family. Any explanation, links or code samples would be great. Thank you, Hans [EMAIL PROTECTED] __ Do You Yahoo!? Make international calls for as low as $.04/minute with Yahoo! Messenger http://phonecard.yahoo.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: device i/o question
* Eugene L. Vorokov [EMAIL PROTECTED] [010803 04:33] wrote: Hello, I have a module which creates new device for data exchange between user program and a module. I was wondering, if I open the device in userspace and write() some piece of data to it, is it guaranteed that the driver will get this solid piece of data at once, or in certain circumstances it can be split into parts which are passed to the driver as several write events ? I'm pretty sure a single user call of write(2) should translate into a single write to your device. There are limits on the size one can write(2) thought. -- -Alfred Perlstein [[EMAIL PROTECTED]] Ok, who wrote this damn function called '??'? And why do my programs keep crashing in it? To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
Charles Randall wrote: From: Terry Lambert [mailto:[EMAIL PROTECTED]] I have yet to see one person using it for anything. So far, it is nothing more than marketing fodder: I haven't seen one motherboard capable of more than 4G worth of SIMMs. The Dell PowerEdge 6450 supports 8 GB of RAM. http://www.dell.com/us/en/biz/products/model_pedge_pedge_6400.htm If I understand your comments in a few follow-up messages correctly you're saying that this effort may be better spent by working on an IA-64 port and making it support large memory configurations? The IA64 intrinsically supports a physical address space of 2^64, so an address space of 2^36 vs. 2^32 is spectacularly unimpressive. Can you elaborate? Yeah, the overhead in doing this will up the CPU utilization to the point where it becomes fairly useless to do the swapping to and from above 4G, vs. just swapping normally. The costs involved in doing DMA to/from the memory region above 4G will be incredible, unless the address space is both exported, and known, to the PCI bus; even then, it could only work for 64 bit cards, since 32 bith cards will only be able to address the first 4G of physical memory. I can think of one or two uses for the memory, assuming the ability to DMA into and out of it with a 64 bit card, and the ability to shove a 1G or 2G window around in it so the kernel can get at the memory when it needs to, but the overhead seems to me to be high enough that you are better off buying a Sibytes card, running NetBSD on the MIPS processors on the thing, plugging in 16G of RAM, and calling your PC a control processor. -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: select kevent aio_read
On Fri, Aug 03, 2001 at 09:04:31PM -0700, Hans Zaunere wrote: I am new to this level of programming so please bare with me. I am curious as the differences between kevent and select and when to use either one. After reading the man pages, they seem to provide about the same functionality. What advantages do each have, and why would one choose one over the other? Also I am confused as to the purpose of aio_read and family. Any explanation, links or code samples would be great. http://people.freebsd.org/~jlemon/ -- Bill Fumerola - security yahoo / Yahoo! inc. - [EMAIL PROTECTED] / [EMAIL PROTECTED] To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: connecting a FujiFinePix1400 (USB) ?
Pete McKenna wrote: I can't speak to the camera, but I've found that coldsync works for my visor. It's in the palm ports. pmckenna:more coldsync/pkg-descr ColdSync is a robust, extensible, portable tool for synchronizing PalmOS devices (PalmPilot et al.) with a Unix workstation. It also supports USB connections to a Visor, under FreeBSD 4.0. It runs without a GUI, and therefore allows you to sync without running X. ColdSync is extensible through the use of conduits, which allow it to share information with other applications. I've used coldsync under both FreeBSD and OpenBSD with my visor, and found it to work just fine on both systems. It comes with some sample code for developing your own conduits, which I will hopefully someday use to develope across-the-network conduits for the box I work on at work, to sync to our Family Calendar feature. Well worth looking into. -- Where am I, and what am I doing in this handbasket? Wes Peters Softweyr LLC [EMAIL PROTECTED] http://softweyr.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: vnconfig + mount removes permission for a second
David Malone wrote: On Wed, Aug 01, 2001 at 11:35:32AM +, Julian Stacey wrote: So something is momentarily making the image unreadable. Should FreeBSD [mount/kernel ?] be changed to avoid denying access ? When you do a mount it automatically HUP's mountd which then re-exports NFS filesystems. I suspect what is happening is that the the filesystem mountlist is being cleared for a moment and that is upsetting the cp. You could try moving /var/run/mountd.pid out of the way and running the mount command. That should stop mount HUPing mountd, which would let you test this theory. Thanks, I tried your suggestion, it works ! so Mountd is the problem then ! Cp does not fail on Umount, I guess Umount happens quicker. ( One reason might have been that Umount is silent, whereas Mount caused 7 lines of complaint to console EG mountd[96]: bad exports list line /cdrom -alldirs -ro -mapall (20 years ago Unix console errs came out under polling not interrupt, so that might have been a lengthy time window, but I expect things on FreeBSD xconsole are now improved :-) But I commented out /cdrom in /etc/exports, still see Mount breaking Cp. ) I can also reproduce this behaviour on just one host as both amd/nfs host target (thus avoiding ethernet, except possibly for named via ethernet) Ian Dowse [EMAIL PROTECTED] wrote: See PRs misc/3980 and kern/9619 for more details. I think NetBSD tried at one point to make mountd incrementally change the export list, but it turned out to be quite hard to get the logic right to keep the mountd and kernel lists in sync. I think they reverted that change eventually. I haven't seen PRs misc/3980 and kern/9619, is there any info is this thread that should be added to one of those ? This is certainly a bug that needs to be fixed; mountd should be able to build up a list of all exports for a filesystem and pass them into the kernel in one replace export list operation. Maybe nice'ing mountd to run at a higher priority, Question is how high ? With Nice or Rtprio or something else ? and/or specifying only IP addresses in /etc/exports would help things a bit now. I converted my /etc/exports to entirely numeric, threw a sighup at named mountd, but that did not stop the problem. Killed mountd -r restarted with numeric exports, still did not help. Julian J.Stacey Munich Unix (FreeBSD, Linux etc) Consultant http://bim.bsn.com/~jhs/ Ihr Rauchen = mein allergischer Kopfschmerz ! Schnupftabak probieren ! To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: PR 25958
Nate Dannenberg wrote: I'd be glad to, however I no longer run FreeBSD. I have since switched to Linux. [ ... ] Not being much of a C programmer anymore I can't really say for certain though :) Are these two statements related by cause and effect? 8-) 8-) -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
RE: Finding MAC address of interface - programming question
I actually prefer the API call getifaddrs(3), which does much the same thing, but hides the MIB management interface behind a fairly well-defined API, which also does the memory management. You can just pull out the link layer addresses along with interface description. Robert N M Watson FreeBSD Core Team, TrustedBSD Project [EMAIL PROTECTED] NAI Labs, Safeport Network Services On Tue, 31 Jul 2001, Jag Johal wrote: Use sysctl(3), basically, its something like this. mib[0] = CTL_NET; mib[1] = AF_ROUTE; mib[2] = 0; mib[3] = AF_INET; mib[4] = NET_RT_IFLIST; mib[5] = 0; sysctl(mib, 6, buf, len, NULL, 0); buf will contain for each interface, an if_msghdr followed by a sockaddr_dl, the sockaddr_dl will contain the interface name and mac addr. Following that will be a ifa_msghdr for each ip address on the interface. You may want to check out UNPv1. Jag -Original Message- From: Chris Faulhaber [mailto:[EMAIL PROTECTED]] Sent: Tuesday, July 31, 2001 3:56 PM To: Michael VanLoon Cc: '[EMAIL PROTECTED]' Subject: Re: Finding MAC address of interface - programming question On Tue, Jul 31, 2001 at 03:56:40PM -0700, Michael VanLoon wrote: Please point me to a more appropriate forum if there is one. I'm kinda out of my depth on this question. Pseudo code is fine. :-) What I'm looking for is how to enumerate the network interfaces and get the Ethernet MAC address of one programmatically. Can anyone point me in the right direction? /usr/src/sbin/ifconfig -- Chris D. Faulhaber - [EMAIL PROTECTED] - [EMAIL PROTECTED] FreeBSD: The Power To Serve - http://www.FreeBSD.org To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: NewCard / pccbb
Tried the patch, interesting thing, for some reason or other its always routing the IRQ to the same IRQ as the realtek network card I have in here, and with the patch in (before nothing worked at all on the pccbb), now if the network card is in slot0 it doesnt work, and the wavelan does, if the wavelan comes first on the pcibus it doesnt work and the network card does. For some reason it always seems to be trying to share an IRQ between these 2, any reason for this? Yeah; that seems to be the way your system's interrupt routing is set up. Get http://people.freebsd.org/~msmith/pir.c, build and run it and let's look at the output. -- ... every activity meets with opposition, everyone who acts has his rivals and unfortunately opponents also. But not because people want to be opponents, rather because the tasks and relationships force people to take different points of view. [Dr. Fritz Todt] V I C T O R Y N O T V E N G E A N C E To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: Page Coloring
If I added this to a man page would I be telling the truth :). Note, these are my notes and not the exact text that I would add, and I have not bother with anything to do with object coloring etc. I just want to make sure I've got this part down. It looks about right, but page colouring is pointless unless and until we can determine the processor cache characteristics at runtime. Which we can't. Plus the code hardcodes all the relevant numbers. The code needs fixing as well as documenting. 8( -- ... every activity meets with opposition, everyone who acts has his rivals and unfortunately opponents also. But not because people want to be opponents, rather because the tasks and relationships force people to take different points of view. [Dr. Fritz Todt] V I C T O R Y N O T V E N G E A N C E To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
mtree exit code [pr:28424]
Been trying to close some PR's, but I'm not so sure about this one. According to the man page, mtree is supposed to return an exit code of 2 when the file hierarchy did not match the specification. However, mtree does not return an exit code of 2 when a file/directory is missing. OpenBSD exhibits the same behavior. My question -- is the man page or the program wrong? Is there some standard (POSIX perhaps?) that specifies how mtree should behave? And if its behavior us indeed changed, would anything break? -Jon To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: a little O/T, but D.V.D. drivesfreeBSD
,[ On Thu, Aug 02, at 05:57PM, Julian Elischer wrote: ]-- | anyone had success watching a dvd? `[ End Quote ]--- ok, first and foremost, please, anyone else replying, reply to the list and not to me and please dont cc me, i am on the list. (i have to, i got a LOT of replies far after my answer was achieved last time) anyway, vlc is what you want, it works decently if you have a good video card, it simply reboots my -current laptop, so your milleage may vary, but there are numerous reports of successful usage. good luck. --gabe This program doesn't seem to work very well at all. It seems to create a thread and set p_vout to NULL on line 95 of vlc-0.2.81/src/video_decoder/vpar_synchro.c, then goes and dereferences it on line 228 of vlc-0.2.81/src/video_decoder/vpar_synchro.c. If anyone's interested in committing it as a port, you can find the necessary files at ftp://ftp.Awfulhak.org/pub/vlc-port. -- It's not brave if you're not scared. -- Brian [EMAIL PROTECTED][EMAIL PROTECTED] http://www.freebsd-services.com/brian@[uk.]FreeBSD.org Don't _EVER_ lose your sense of humour ! brian@[uk.]OpenBSD.org To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
On Thu, 2 Aug 2001, Kenneth Wayne Culver wrote: Replying above an email because the curser is there is like shitting in your pants because your ass is there when you need to go to the toilet. BUT, don't the motherboards also have to support this? And isn't it only supported through some wierd segmentation thing? Yes, the mainboard needs to support the memory. No, there is no weird segmentation thing, at least not visible from software. regards, Rik -- Executive summary of a recent Microsoft press release: we are concerned about the GNU General Public License (GPL) http://www.surriel.com/ http://www.conectiva.com/ http://distro.conectiva.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
Rik van Riel wrote: This is a trivial implementation. I'm not very impressed. Personally, I'm not interested in a huge user space, Maybe not you, but I bet the database and scientific computing people will be interested in having 64 GB memory support in this simple way. You mean 4G, of course, since the process address space remains limites to 32 bits... Fully populating both the transmit and receive windows for 1M connections is 32G of RAM, right there... and it better be kernel RAM, or you're screwed. Well, you _could_ store this memory in files, which get mapped and unmapped by the same code the filesystem code uses to access file data in non-kernel-mapped RAM. *runs like hell* That's the entire problem: it has to be performant, or I'm just not interested in it. Using the memory as a software L3 would make a lot more sense to me... a 3G user space is pretty useless, from my point of view, and I'd much rather spend the space on the kernel. Cutting that to 2G/2G might be OK, with 1G in the user used for mapping regions in and out. You are still limited to how much RAM you have, but at least you aren't shooting yourself in the foot trying to make it work. You still haven't told me what Linux does for 2x4G processes and a 1G kernel with only 8G of physical RAM. I rather suspect that as soon as your usage exceeds real memory, it all goes to hell very quickly, since your L1 and L2 caches are effectively disabled by the frequent reloading of CR3 and CR4 on context switches... -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: How to visit physical memory above 4G?
On Fri, 3 Aug 2001, Terry Lambert wrote: You still haven't told me what Linux does for 2x4G processes and a 1G kernel with only 8G of physical RAM. I rather suspect that as soon as your usage exceeds real memory, it all goes to hell very quickly, since your L1 and L2 caches are effectively disabled by the frequent reloading of CR3 and CR4 on context switches... Page tables can point to pages all over memory, there is no need to use stupid segment tricks for anything. regards, Rik -- Virtual memory is like a game you can't win; However, without VM there's truly nothing to lose... http://www.surriel.com/ http://distro.conectiva.com/ Send all your spam to [EMAIL PROTECTED] (spam digging piggy) To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
Re: gethostbyXXXX_r()
Alfred Perlstein wrote: * Alexander Litvin [EMAIL PROTECTED] [010803 09:54] wrote: Are there any plans of making gethostbyname_r() and gethostbyaddr_r() available in FreeBSD? May be somebody already has them almost ready to be commited? Or are there any considered wrong way to go? The reason I'm asking is that I actually have a local patch implementing them here (only for DNS for now). Is it good idea to put some effort to finalaze it and submit a PR? Or I'd better not waist time on that? Please complete it, let me know when you submit the PR i'll try to get it integrated. I'll be happy to take a look at it too. I did a lot of the _r routines we have now, in some cases simply documenting ones that were there, but halted when I got to gethostbyX_r and the passwd and group variants, because they were too fugly to tackle at that time. I'll get back to the remainder someday, when I have the time, unless you beat me to it. -- Where am I, and what am I doing in this handbasket? Wes Peters Softweyr LLC [EMAIL PROTECTED] http://softweyr.com/ To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message