Page MenuHomeFreeBSD

imp (Warner Losh)
User

Projects

User Details

User Since
Jun 2 2014, 4:20 PM (272 w, 9 h)

Recent Activity

Yesterday

imp added a comment to D21297: Fix loader on powerpc32.
In D21297#463774, @imp wrote:

I agree with @jhibbits: cas.c shouldn't be built for powerpc32, only powerpc64, but the change is OK.
If we go this way, then it is better to remove the (incorrect) conditional compilation of cas.c.
Else, powerpc/ofw/Makefile should be fixed.
This is the relevant part of it:

.if ${MACHINE_ARCH} == "powerpc64"
SRCS+=          cas.c
CFLAGS+=        -DCAS
.endif

It seems this is wrong when cross building to powerpc.
Perhaps it could be changed to something like this:

.if (!defined(TARGET_ARCH) && ${MACHINE_ARCH} == "powerpc64") || "${TARGET_ARCH}" == "powerpc64"
SRCS+=          cas.c
CFLAGS+=        -DCAS
.endif

But I'm also fine with just removing the if block.

TARGET_ARCH isn't a thing you can test anywhere outside of Makefile.inc1, so this suggestion can't be right. In the cross build case, we always set MACHINE_ARCH correctly.

Ok, but then the following use case is not supported, right?

cd /usr/src/stand && make TARGET=powerpc TARGET_ARCH=powerpc

Because the following command outputs "powerpc64":

Mon, Aug 19, 2:11 PM · PowerPC
imp added a comment to D21297: Fix loader on powerpc32.

I agree with @jhibbits: cas.c shouldn't be built for powerpc32, only powerpc64, but the change is OK.
If we go this way, then it is better to remove the (incorrect) conditional compilation of cas.c.
Else, powerpc/ofw/Makefile should be fixed.
This is the relevant part of it:

.if ${MACHINE_ARCH} == "powerpc64"
SRCS+=          cas.c
CFLAGS+=        -DCAS
.endif

It seems this is wrong when cross building to powerpc.
Perhaps it could be changed to something like this:

.if (!defined(TARGET_ARCH) && ${MACHINE_ARCH} == "powerpc64") || "${TARGET_ARCH}" == "powerpc64"
SRCS+=          cas.c
CFLAGS+=        -DCAS
.endif

But I'm also fine with just removing the if block.

Mon, Aug 19, 1:45 PM · PowerPC

Sun, Aug 18

imp added a comment to D14698: [new driver] zilinx/zy7_qspi: Add a qspi driver for Zynq platforms..

it looks to my eye that all prior comments had been addressed...

Sun, Aug 18, 2:22 PM · ARM
imp added a comment to D14698: [new driver] zilinx/zy7_qspi: Add a qspi driver for Zynq platforms..

generally I like this. Couple of minor spacing nits, and a question about a possible improper use of KASSERT

Sun, Aug 18, 2:22 PM · ARM

Sat, Aug 17

imp committed rS351157: Fix small bug in wrapping introduced in r325955..
Fix small bug in wrapping introduced in r325955.
Sat, Aug 17, 2:37 AM
imp committed rS351156: Add nowerror and local to the list of tokens..
Add nowerror and local to the list of tokens.
Sat, Aug 17, 2:36 AM
imp committed rS351155: Move initializations of config earlier..
Move initializations of config earlier.
Sat, Aug 17, 2:36 AM
D21297: Fix loader on powerpc32 is now accepted and ready to land.

This does what the comment says it does... I'm not qualified too know if that's actually the right thing to do or not.

Sat, Aug 17, 2:00 AM · PowerPC
D21296: Remove some compatability with Seventh Edition UNIX realloc(). is now accepted and ready to land.

This is good, and good commit message. V7 was released 40 years ago this past January. It flourished in the late 70s and early 80s as a platform people ported to (I'm aware of maybe a dozen such ports too 4 or 5 different architectures)... then all those ports migrated to System III or System V by maybe 1989 or so. The last time I saw this software pattern was in the mid 90s when I updated the program in question to not do that.... I doubt this code path has been execute in the last decade or two except by pedants testing V7 compatibility.

Sat, Aug 17, 1:59 AM

Fri, Aug 16

D20562: The efifat files are no longer used: remove the code to build them. is now accepted and ready to land.

kill them with fire :)

Fri, Aug 16, 7:31 PM
D21293: Fix compilation of kernels with usb and fdt enabled, but no miibus is now accepted and ready to land.

Ah, I see where it's used now. There are several alternatives, but this is the least bad one that comes to mind.
We have a little bit of dead code vs having #ifdefs for FDT in usb_ethernet.c.
It's more modular to have it like this, so I'm cool with it.

Fri, Aug 16, 5:39 PM
imp added a comment to D21293: Fix compilation of kernels with usb and fdt enabled, but no miibus.

looks fine as far as it goes, but what's including this? usb_ethernet.c certainly needs miibus too compile...

Fri, Aug 16, 5:31 PM
imp added a comment to D21060: Stop installing clang, clang++, and clang-cpp hardlinks in /usr/bin..
In D21060#462958, @kib wrote:
In D21060#462930, @imp wrote:

I'd personally rather see us bring back something from the past . We had WITH_CLANG_AS_CC which controlled creating cc->clang links. What if we had WITH_CLANG_LINKS or similar that would create clang->cc links and have it default to off? This isn't blocking if there's no support for it, though. I didn't click request changes for this :).

See below.

And have you done an EXP run too see what the fallout is? My 'request changes' is a hard no until that's run and any issues resolved.

I stated that exp run is required after the discussion is finished. I see no reason to ask portmgr to spend their time unless there is a clear route to commit the change.
WRT to optional symlinks, I am fine with it as far as defaults are to not have them. The reason for this change is to remove the surprise and the need to answer 'why' questions for people that start developing on FreeBSD. The same group of people are proficient in Linux and they do not have to manipulate $PATH or create symlinks in ~/bin because 'this is how FreeBSD happens to not-handle it' for all the time (it == conflict between base and ports binaries). If symlinks are on by default, this change does not worth the time.

Fri, Aug 16, 4:07 PM
D21291: stand: fix build with xtoolchain-llvm90 is now accepted and ready to land.

looks great to me.

Fri, Aug 16, 4:03 PM
imp added inline comments to D21069: libsysdecode: automate tables.h dependency generation.
Fri, Aug 16, 3:13 PM
imp added a comment to D20653: Import spleen bitmap fonts to contrib/.

ah, enough searching and I see that it is.

Fri, Aug 16, 3:06 PM
imp added a comment to D20653: Import spleen bitmap fonts to contrib/.

well, it could be in the files, but it's unambiguous enough. I assume this is how it is upstream?

Fri, Aug 16, 3:05 PM
D20653: Import spleen bitmap fonts to contrib/ is now accepted and ready to land.

This detached license is basically required since bdf files don't have a good way to add it.

Fri, Aug 16, 3:04 PM
imp added inline comments to D21291: stand: fix build with xtoolchain-llvm90.
Fri, Aug 16, 2:14 PM
imp added inline comments to D21291: stand: fix build with xtoolchain-llvm90.
Fri, Aug 16, 2:00 PM
D21060: Stop installing clang, clang++, and clang-cpp hardlinks in /usr/bin. now requires changes to proceed.

I'd personally rather see us bring back something from the past . We had WITH_CLANG_AS_CC which controlled creating cc->clang links. What if we had WITH_CLANG_LINKS or similar that would create clang->cc links and have it default to off? This isn't blocking if there's no support for it, though. I didn't click request changes for this :).

Fri, Aug 16, 1:45 PM
D21286: Loader: Add load offset to powerpc kernel entry point now requires changes to proceed.
Fri, Aug 16, 1:37 PM
D21282: stand: fix build with xtoolchain-llvm90 is now accepted and ready to land.

I think this is fine.... Not 100% sure, but I think we'll be good. The time may be here to always link in libsa.a, but if you don't *NEED* that, then let's not go there yet. the day will come though...

Fri, Aug 16, 1:47 AM
imp added a comment to D21281: Work around a bug in the EFI HTTP driver.

OK. Not really worth optimizing then. Thanks for the feedback.

Fri, Aug 16, 1:28 AM
imp added a comment to D21281: Work around a bug in the EFI HTTP driver.

Seems sane enough...

Fri, Aug 16, 12:30 AM

Thu, Aug 15

imp committed rS351089: Catch mkheaders.c up to the removal of counted device support in 2005..
Catch mkheaders.c up to the removal of counted device support in 2005.
Thu, Aug 15, 5:21 PM
imp committed rS351087: Sort getopt(3) options and case statements per style(9).
Sort getopt(3) options and case statements per style(9)
Thu, Aug 15, 5:07 PM
imp added a comment to D11115: Clang groks .codeNN; remove CLANG_NO_IAS from sys/boot/i386.

side by side comparison with the .o generated

Looking at boot1.o differences there are lots of header, debug, etc. changes, and changes due to differing offsets. The real change is different instruction size for the test instruction at the beginning of read

read:           testb $FL_PACKET,%cs:MEM_REL+flags-start # LBA support enabled?

GNU as produces

0000:012e      2e f6 06 b0 08 80   test byte cs:[0x8b0], 0x80   ; [0x8b0:1]=255 ; 128

While Clang IAS produces:

0000:012e      2e 67 f6 05 b3 08 00 00 80  test byte cs:[0x8b3], 0x80   ; [0x8b3:1]=255 ; 128

This is fine for boot2, other than using three bytes more than necessary.

Thu, Aug 15, 2:44 PM
imp added a comment to D21265: fusefs: fix conditional from r351061.

had the same thing in mind

Thu, Aug 15, 4:43 AM

Wed, Aug 14

imp committed rS351044: Move all the hp* drivers too files.x86.
Move all the hp* drivers too files.x86
Wed, Aug 14, 9:03 PM
imp committed rS351053: Move the common x86 ipmi files to files.x86. The powerpc file list is different.
Move the common x86 ipmi files to files.x86. The powerpc file list is different
Wed, Aug 14, 8:59 PM
imp committed rS351051: Windows ndis support is x86 only. Move the MI parts there..
Windows ndis support is x86 only. Move the MI parts there.
Wed, Aug 14, 8:58 PM
imp committed rS351052: The x86 part of hwpmc is shared, so move it to files.x86..
The x86 part of hwpmc is shared, so move it to files.x86.
Wed, Aug 14, 8:58 PM
imp committed rS351050: Intel's isci is part of the chipset, so it is x86 specific..
Intel's isci is part of the chipset, so it is x86 specific.
Wed, Aug 14, 8:58 PM
imp committed rS351049: Move hyperv to files.x86.
Move hyperv to files.x86
Wed, Aug 14, 8:58 PM
imp committed rS351048: The bxe driver, QLogic NetXtreme II Ethernet 10Gb PCIe adapter driver, is x86.
The bxe driver, QLogic NetXtreme II Ethernet 10Gb PCIe adapter driver, is x86
Wed, Aug 14, 8:58 PM
imp committed rS351047: The ACPI parts are identical between i386 and amd64.
The ACPI parts are identical between i386 and amd64
Wed, Aug 14, 8:58 PM
imp committed rS351046: Move via padlock files to files.x86..
Move via padlock files to files.x86.
Wed, Aug 14, 8:58 PM
imp committed rS351045: Apart from one MD file, aesni is common to x86. Move it into files.x86..
Apart from one MD file, aesni is common to x86. Move it into files.x86.
Wed, Aug 14, 8:58 PM
imp committed rS351043: Move the identical x86 lines to files.x86.
Move the identical x86 lines to files.x86
Wed, Aug 14, 8:58 PM
imp closed D21248: Move the identical x86 lines to files.x86.
Wed, Aug 14, 8:58 PM

Tue, Aug 13

D21256: Stop listing "on motherboard" as the parent of nexus devices on x86. is now accepted and ready to land.
Tue, Aug 13, 11:14 PM
imp added a comment to D18613: Add driver for the VMware Paravirtual SCSI (pvscsi) controller.

P,S, I don't know the clicky button to say this is no longer blocked by core@, so don't let that stop you from committing it.

Tue, Aug 13, 7:16 PM
imp added a comment to D18613: Add driver for the VMware Paravirtual SCSI (pvscsi) controller.

Alternatively, you could add a explicit reference to the location of the license file in FreeBSD's repo in the .c and .h. That would be fine enough.

Tue, Aug 13, 7:15 PM
imp added a comment to D18613: Add driver for the VMware Paravirtual SCSI (pvscsi) controller.

@vbhakta_vmware.com is there anything I can do to facilitate the changes this driver needs to get it into the tree?

Tue, Aug 13, 7:13 PM
imp added inline comments to D20116: Introduce <sys/qmath.h>.
Tue, Aug 13, 6:16 PM
D21249: Remove deprecated GEOM classes is now accepted and ready to land.
Tue, Aug 13, 6:10 PM
imp added a comment to D21249: Remove deprecated GEOM classes.

time to go... but need to remove from files and double check to make sure there's no lingering man page Xr's.

Tue, Aug 13, 5:11 PM
imp committed rS350991: r350976 accidentally removed nvram device. Restore it..
r350976 accidentally removed nvram device. Restore it.
Tue, Aug 13, 3:50 PM
imp added inline comments to D21248: Move the identical x86 lines to files.x86.
Tue, Aug 13, 3:34 PM
imp committed rS350985: vx(4) was removed in r347921. Remove stray reference..
vx(4) was removed in r347921. Remove stray reference.
Tue, Aug 13, 3:28 PM
imp committed rS350986: Flowtables were removed in r321618, remove stray reference here..
Flowtables were removed in r321618, remove stray reference here.
Tue, Aug 13, 3:28 PM
imp committed rS350984: nsp(4) was removed in r339571. Remove stray reference..
nsp(4) was removed in r339571. Remove stray reference.
Tue, Aug 13, 3:28 PM
imp committed rS350982: fe(4) driver has been removed from the tree in r347914. Remove stray reference..
fe(4) driver has been removed from the tree in r347914. Remove stray reference.
Tue, Aug 13, 3:16 PM
imp added a comment to D21248: Move the identical x86 lines to files.x86.

minor comment fixing.

Tue, Aug 13, 3:02 PM
imp added inline comments to D21248: Move the identical x86 lines to files.x86.
Tue, Aug 13, 2:59 PM
imp added a comment to D21248: Move the identical x86 lines to files.x86.
In D21248#461858, @jhb wrote:

There were several other things that looked like they were also identical (e.g. several agp drivers, all the atkbdc stuff, acpi_wmi_if.m). Those can be followup commits though.

Tue, Aug 13, 2:59 PM
imp added a reviewer for D21248: Move the identical x86 lines to files.x86: jhb.
Tue, Aug 13, 1:58 PM
imp created D21248: Move the identical x86 lines to files.x86.
Tue, Aug 13, 1:57 PM
imp committed rS350976: nvme has been moved to 'files' so shouldn't be here anymore. It works on.
nvme has been moved to 'files' so shouldn't be here anymore. It works on
Tue, Aug 13, 1:42 PM
imp committed rS350975: ed(4) has been removed from the tree, but these were forgotten in r347911..
ed(4) has been removed from the tree, but these were forgotten in r347911.
Tue, Aug 13, 1:28 PM

Mon, Aug 12

imp committed rS350967: Fix powerpc LINT build.
Fix powerpc LINT build
Mon, Aug 12, 11:25 PM
imp committed rS350966: ukbdmap.h rule was identical on all platforms, so move them into sys/conf/files..
ukbdmap.h rule was identical on all platforms, so move them into sys/conf/files.
Mon, Aug 12, 11:25 PM
imp committed rS350965: Create files.x86.
Create files.x86
Mon, Aug 12, 10:59 PM
imp closed D21210: Create files.x86.
Mon, Aug 12, 10:59 PM
imp committed rS350964: Floppy driver really only works on x86.
Floppy driver really only works on x86
Mon, Aug 12, 10:59 PM
imp closed D21208: Floppy driver really only works on x86.
Mon, Aug 12, 10:59 PM
imp committed rS350963: Move sc out of the global file.
Move sc out of the global file
Mon, Aug 12, 10:59 PM
imp closed D21233: Move sc out of the global file.
Mon, Aug 12, 10:59 PM
imp committed rS350962: Start to split out the really x86 specific NOTES from the global notes file..
Start to split out the really x86 specific NOTES from the global notes file.
Mon, Aug 12, 10:58 PM
imp closed D21203: Start to split out the really x86 specific NOTES from the global notes file. Start with COMPAT_43, since it's really only relevant to x86..
Mon, Aug 12, 10:58 PM
imp added a comment to D21233: Move sc out of the global file.

Combine and rebase

Mon, Aug 12, 6:42 PM
imp added a comment to D21207: Move screen saver stuff to x86 NOTES.

Per jhb suggestion, combining with https://reviews.freebsd.org/D21233

Mon, Aug 12, 6:40 PM
D21210: Create files.x86 now requires review to proceed.

Update to use include more directly, per jhb

Mon, Aug 12, 6:15 PM
imp added a comment to D21210: Create files.x86.
In D21210#461496, @jhb wrote:

Oh, I thought it seemed to be there from the code I read on Friday:

static void
read_file(char *fname)
{
...
	/*
	 * include "filename"
	 * filename    [ standard | optional ]
	 *	[ dev* [ | dev* ... ] | profiling-routine ] [ no-obj ]
	 *	[ compile-with "compile rule" [no-implicit-rule] ]
	 *      [ dependency "dependency-list"] [ before-depend ]
	 *	[ clean "file-list"] [ warning "text warning" ]
	 *	[ obj-prefix "file prefix"]
	 */
...
	if (eq(wd, "include")) {
		wd = get_quoted_word(fp);
		if (wd == (char *)EOF || wd == NULL)
			errout("%s: missing include filename.\n", fname);
		(void) snprintf(ifname, sizeof(ifname), "../../%s", wd);
		read_file(ifname);
		while (((wd = get_word(fp)) != (char *)EOF) && wd)
			;
		goto next;
	}
Mon, Aug 12, 6:05 PM
imp added a comment to D21232: nandfs: avoid integer overflow in nandfs_get_dat_bdescs_ioctl.
In D21232#461469, @imp wrote:

These are fine but (a) you need to have mount privs to execute this ioctl; (b) nandfs is a panic trap due to bad locking and the system can't stay up once there's any vnode pressure at all; and (c) the set of nandfs users is the empty set due to (b). This is not exploitable in any meaningful way.

and you have to go out of your way to build and run it. But the fix is easier than explaining that we don't care about nandfs.

Mon, Aug 12, 5:32 PM
imp added reviewers for D21233: Move sc out of the global file: jhb, jhibbits.
Mon, Aug 12, 5:31 PM
imp created D21233: Move sc out of the global file.
Mon, Aug 12, 5:31 PM
imp added a comment to D21210: Create files.x86.
In D21210#461467, @jhb wrote:

Ah, I had thought we would use 'include' in files.i386 and files.amd64 rather than DEFAULTS, but either way is fine with me.

Mon, Aug 12, 5:27 PM
imp added a comment to D21203: Start to split out the really x86 specific NOTES from the global notes file. Start with COMPAT_43, since it's really only relevant to x86..

update per jhb's suggestions

Mon, Aug 12, 5:23 PM
imp added a comment to D21203: Start to split out the really x86 specific NOTES from the global notes file. Start with COMPAT_43, since it's really only relevant to x86..
In D21203#461464, @jhb wrote:

OTOH, I wonder if what we might not want instead is a 'NOTES_EXTRA'. You would modify makeLINT.mk to do something like this:

NOTES=	${.CURDIR}/../../conf/NOTES ${.CURDIR}/NOTES ${NOTES_EXTRA}

We might find that there are some other large "features" we might want to split out into an MI NOTES but only enable them for certain architectures.
An even simpler way perhaps might be to change makeLINT.mk to just use 'NOTES+=' instead of 'NOTES=', then you could change amd64/Makefile and i386/Makefile
to just have:

NOTES=${.CURDIR}/../../x86/conf/NOTES

And use '+=' in makeLINT.mk. Perhaps that is the simplest of all.

Mon, Aug 12, 5:11 PM
D21232: nandfs: avoid integer overflow in nandfs_get_dat_bdescs_ioctl is now accepted and ready to land.

These are fine but (a) you need to have mount privs to execute this ioctl; (b) nandfs is a panic trap due to bad locking and the system can't stay up once there's any vnode pressure at all; and (c) the set of nandfs users is the empty set due to (b). This is not exploitable in any meaningful way.

Mon, Aug 12, 5:09 PM

Sat, Aug 10

imp added a comment to D21210: Create files.x86.

This commit is purposely thin to get the framework up and going so we can focus on framework issues.

Sat, Aug 10, 10:40 PM
imp added a reviewer for D21210: Create files.x86: jhb.
Sat, Aug 10, 10:40 PM
imp created D21210: Create files.x86.
Sat, Aug 10, 10:39 PM
imp added inline comments to D21208: Floppy driver really only works on x86.
Sat, Aug 10, 10:00 PM
imp added a comment to D21203: Start to split out the really x86 specific NOTES from the global notes file. Start with COMPAT_43, since it's really only relevant to x86..

changes per jhb review, except the ifdef x86 in makeLINT.mk

Sat, Aug 10, 4:26 PM
imp added a reviewer for D21208: Floppy driver really only works on x86: jhb.
Sat, Aug 10, 4:24 PM
imp added a comment to D21203: Start to split out the really x86 specific NOTES from the global notes file. Start with COMPAT_43, since it's really only relevant to x86..

And also https://reviews.freebsd.org/D21208

Sat, Aug 10, 4:23 PM
imp created D21208: Floppy driver really only works on x86.
Sat, Aug 10, 4:23 PM
imp added a comment to D21203: Start to split out the really x86 specific NOTES from the global notes file. Start with COMPAT_43, since it's really only relevant to x86..

See follow on review https://reviews.freebsd.org/D21207

Sat, Aug 10, 4:19 PM
imp added a reviewer for D21207: Move screen saver stuff to x86 NOTES: jhb.
Sat, Aug 10, 4:17 PM
imp created D21207: Move screen saver stuff to x86 NOTES.
Sat, Aug 10, 4:15 PM
imp committed rS350830: These are no longer a thing, remove them..
These are no longer a thing, remove them.
Sat, Aug 10, 4:15 AM
imp added inline comments to D21203: Start to split out the really x86 specific NOTES from the global notes file. Start with COMPAT_43, since it's really only relevant to x86..
Sat, Aug 10, 1:07 AM
imp added inline comments to D21203: Start to split out the really x86 specific NOTES from the global notes file. Start with COMPAT_43, since it's really only relevant to x86..
Sat, Aug 10, 12:42 AM
imp added a reviewer for D21203: Start to split out the really x86 specific NOTES from the global notes file. Start with COMPAT_43, since it's really only relevant to x86.: jhb.
Sat, Aug 10, 12:42 AM
imp created D21203: Start to split out the really x86 specific NOTES from the global notes file. Start with COMPAT_43, since it's really only relevant to x86..
Sat, Aug 10, 12:41 AM
imp added a comment to D21200: Only enable COMPAT_43 changes for syscalls ABI for a.out processes..
In D21200#460958, @jhb wrote:

I think a related question on the mail thread was if COMPAT_43 should be in any non-x86 config files at all. E.g. it shouldn't be in sys/conf/notes but should move to sys/x86/conf/NOTES once we start that.

Sat, Aug 10, 12:26 AM
D21200: Only enable COMPAT_43 changes for syscalls ABI for a.out processes. is now accepted and ready to land.

I think these are good. There's comments in the Linux emulator that says they do different things because of this ifdef:

Sat, Aug 10, 12:15 AM