Page MenuHomeFreeBSD

ehem_freebsd_m5p.com (Elliott Mitchell)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 20 2021, 4:27 AM (197 w, 6 d)

Recent Activity

Wed, Dec 4

ehem_freebsd_m5p.com added inline comments to D47745: intr/x86: merge pic_{dis,en}able_source() call into pic_{dis,en}able_intr().
Wed, Dec 4, 1:56 AM

Tue, Dec 3

ehem_freebsd_m5p.com updated the diff for D47745: intr/x86: merge pic_{dis,en}able_source() call into pic_{dis,en}able_intr().

Updating, point to possible solution for what I need @mav to review (remove ->pic_enable_intr() call from clock.c/875b8844bec hack).

Tue, Dec 3, 9:04 PM

Mon, Dec 2

ehem_freebsd_m5p.com added a comment to D47846: sys/intr.h: Make it safe to include from assembler.
In D47846#1090926, @imp wrote:

yea, the only question I have is if we move all the assembly values into machine/intr.h, duplicating one or two across architectures and include machine/intr.h for the assembler, or if I leave it as I have it inthe review. @jhb

Mon, Dec 2, 11:30 PM

Sun, Dec 1

ehem_freebsd_m5p.com added a reviewer for D47745: intr/x86: merge pic_{dis,en}able_source() call into pic_{dis,en}able_intr(): mav.

Seems the issue in sys/x86/isa/clock.c originates from rG:875b8844bec. I'm unsure how to work around the issue, rG:49ed68bbf3c makes the situation worse.

Sun, Dec 1, 5:38 AM
ehem_freebsd_m5p.com added a comment to D47848: genassym: Remove stale *if.h depends.

Yet the solution to the underlying issue is also quite simple (already have a commit on GH, I can upload to Phabricator if desired), so perhaps that should be considered? If nothing else that gives an additional option which may turn out rather superior for the long term. The underlying issue has likely been causing all sorts of (perhaps minor) trouble for some already.

Sun, Dec 1, 5:24 AM
ehem_freebsd_m5p.com added a comment to D47745: intr/x86: merge pic_{dis,en}able_source() call into pic_{dis,en}able_intr().

Then when looking for something else discover sys/x86/isa/clock.c has the call i8254_intsrc->is_pic->pic_enable_intr(i8254_intsrc); without the ->pic_enable_source(). I lack hardware to test this, so I'm unsure of the effect.

Sun, Dec 1, 12:02 AM

Sat, Nov 30

ehem_freebsd_m5p.com added a comment to D47846: sys/intr.h: Make it safe to include from assembler.
In D47846#1090953, @jhb wrote:

I don't see a compelling reason to duplicate values across architectures. That would seem to defeat the point of the shared header file.

Sat, Nov 30, 8:32 PM
ehem_freebsd_m5p.com accepted D47848: genassym: Remove stale *if.h depends.

This seems reasonable, though I'm concerned with the present approach.

Sat, Nov 30, 8:19 PM

Fri, Nov 29

ehem_freebsd_m5p.com added a comment to D47847: arm: Use constants from sys/intr.h, not genassym.

I dislike making the interrupt headers assembly-safe merely for this. If this is really desired, then have the all constants in machine/intr.h (which is better anyway).

Fri, Nov 29, 10:22 PM
ehem_freebsd_m5p.com added a comment to D47846: sys/intr.h: Make it safe to include from assembler.

Unless there is something I'm unaware of, INTR_IRQ_INVALID isn't ever used by assembly-language.

Fri, Nov 29, 10:12 PM
ehem_freebsd_m5p.com added inline comments to D47846: sys/intr.h: Make it safe to include from assembler.
Fri, Nov 29, 10:09 PM

Thu, Nov 28

ehem_freebsd_m5p.com abandoned D47756: intr/powerpc: update 0c50edff52f2 hack.

Closing in light of rG:700f7e793b3793606fbb9942eda03ac02991c126.

Thu, Nov 28, 12:19 AM

Wed, Nov 27

ehem_freebsd_m5p.com updated the diff for D47756: intr/powerpc: update 0c50edff52f2 hack.

Updating to jhibbits@ preferred method of accomplishing the goal. This is only expected to be used during a transition period, so hopefully will disappear later.

Wed, Nov 27, 8:58 PM

Tue, Nov 26

ehem_freebsd_m5p.com requested review of D47756: intr/powerpc: update 0c50edff52f2 hack.
Tue, Nov 26, 4:53 AM

Mon, Nov 25

ehem_freebsd_m5p.com added a comment to D47745: intr/x86: merge pic_{dis,en}able_source() call into pic_{dis,en}able_intr().

Note to anyone else who happens to run across this. Indeed, the (mask_fn)isrc->is_pic->pic_disable_source could be substituted for the intr_disable_srcargument to intr_event_create() inside intr_register_source(). Issue is after this commit, #1457 first modifies intr_disable_src and then later completely removes it. At the point where this is the wrapper still needs to be retained.

Mon, Nov 25, 9:53 PM
ehem_freebsd_m5p.com added a comment to D47745: intr/x86: merge pic_{dis,en}able_source() call into pic_{dis,en}able_intr().

Mostly looking for a review from @royger I'm unsure whether this additional call really needs to be retained, versus being unnecessary.

Mon, Nov 25, 8:37 PM
ehem_freebsd_m5p.com requested review of D47745: intr/x86: merge pic_{dis,en}able_source() call into pic_{dis,en}able_intr().
Mon, Nov 25, 8:28 PM

Wed, Nov 13

ehem_freebsd_m5p.com requested review of D47546: sys/powerpc: cleanup device driver module setup.
Wed, Nov 13, 9:50 PM

Oct 31 2024

ehem_freebsd_m5p.com requested changes to D47358: rescue: Implement a direct dumper for arm64 and amd64.
Oct 31 2024, 5:15 PM

Oct 26 2024

ehem_freebsd_m5p.com updated the summary of D40474: intrng: call pic_init_secondary on all registered PICs.
Oct 26 2024, 10:52 PM
ehem_freebsd_m5p.com updated the diff for D40474: intrng: call pic_init_secondary on all registered PICs.

As proposed.

Oct 26 2024, 10:49 PM
ehem_freebsd_m5p.com reclaimed D40474: intrng: call pic_init_secondary on all registered PICs.

Reclaiming/reopening as per note in D47279. This could be a better solution to the issue pointed at.

Oct 26 2024, 10:49 PM
ehem_freebsd_m5p.com added a comment to D47279: intrng: address post-commit review feedback.

Says the person sending messages laced with hostile sarcasm.

Oct 26 2024, 8:30 PM
ehem_freebsd_m5p.com added a comment to D47279: intrng: address post-commit review feedback.

Wow, so friendly to revert something immediately after the person gets a rebase done and without informing them about discussion which was occurring. Also odd how there is suddenly all this discussion now when there was no activity on the original source for more than a month. I tried to get everyone's attention who is on here.

Oct 26 2024, 12:44 AM

Oct 19 2024

ehem_freebsd_m5p.com added a comment to D35417: kern/intr: allow for event allocation outside kern_intr.c.

This is part of a fascinating end point I reached in combination with other commits. Specifically, Github #1457. I think this is better to review via GitHub, since the full git support allows viewing as part of the full series. Phabicator isn't all that well suited to the role.

Oct 19 2024, 2:40 AM
ehem_freebsd_m5p.com abandoned D43980: intrng: merge separated PIC types.

The problem which this was a part of solving looks like it will be dealt with via other means. As such dumping this.

Oct 19 2024, 2:31 AM
ehem_freebsd_m5p.com abandoned D40474: intrng: call pic_init_secondary on all registered PICs.

Once the fixes to the multi-root support are in, using those will address my need. Unfortunately the problem brought up by the comment. "QQQ: Only root PIC is aware of other CPUs ???", still remains. This is no longer productive for me, so abandoning this one.

Oct 19 2024, 2:30 AM

Oct 18 2024

ehem_freebsd_m5p.com added a comment to D35559: intrcompat: rename "machine/intr*.h" to "machine/a_bikeshed_string_for_sed_to_target.h".

If someone is up for forward progress on this trivial issue, I recommend doing: (assuming your remote for FreeBSD-Github is "github")

Oct 18 2024, 10:19 PM
ehem_freebsd_m5p.com retitled D35559: intrcompat: rename "machine/intr*.h" to "machine/a_bikeshed_string_for_sed_to_target.h" from intrcompat: rename "machine/intr*.h" to "machine/a_bikeshed_string_for_Sed to intrcompat: rename "machine/intr*.h" to "machine/a_bikeshed_string_for_sed_to_target.h".
Oct 18 2024, 10:16 PM
ehem_freebsd_m5p.com requested changes to D47002: sys/intr.h: formally depend on machine/intr.h.

I had thought that it might be better, if you were going to push this through quickly, to simply push past and deal with the aftermath. Issue is you've now taken long enough for me to start organizing my thoughts better.

Oct 18 2024, 10:13 PM
ehem_freebsd_m5p.com updated the summary of D35559: intrcompat: rename "machine/intr*.h" to "machine/a_bikeshed_string_for_sed_to_target.h".
Oct 18 2024, 10:08 PM
ehem_freebsd_m5p.com retitled D35559: intrcompat: rename "machine/intr*.h" to "machine/a_bikeshed_string_for_sed_to_target.h" from intr: rename "machine/intr_machdep.h" headers to "machine/intr.h" to intrcompat: rename "machine/intr*.h" to "machine/a_bikeshed_string_for_Sed.
Oct 18 2024, 10:07 PM
ehem_freebsd_m5p.com updated the diff for D35559: intrcompat: rename "machine/intr*.h" to "machine/a_bikeshed_string_for_sed_to_target.h".

Having two distinct names for the interrupt headers serves to interfere with most efforts to converge the interrupt frameworks. Simply rename all of them to "machine/a_bikeshed_string_for_sed_to_target.h". Another name could be substituted, but right now simply have a random one for this commit.

Oct 18 2024, 10:06 PM

Oct 9 2024

ehem_freebsd_m5p.com resigned from D40161: arm64/intrng: add support for FIQs.

I was simply looking for a pause, so now removing the pause.

Oct 9 2024, 12:58 AM
ehem_freebsd_m5p.com resigned from D47002: sys/intr.h: formally depend on machine/intr.h.

I guess I'll have to leave it there then.

Oct 9 2024, 12:58 AM
ehem_freebsd_m5p.com added a comment to D47002: sys/intr.h: formally depend on machine/intr.h.
In D47002#1071817, @imp wrote:

If it breaks the Gordian Knot, let's create machine/interrupt.h to contain the APIs that are common between INTRNG and !INTRNG, lets do it. Let's see where we wind up, and we'll discover if it's too trivial or not.

Oct 9 2024, 12:00 AM

Oct 8 2024

ehem_freebsd_m5p.com added a comment to D47002: sys/intr.h: formally depend on machine/intr.h.

Take a look at the first two commits of GitHub #1286. The first two create an interrupt_t type definition for things which only handle pointers to the architecture type, but don't directly examine the contents. If you have to #include sys/intr.h, then it is literally impossible to write truly machine-independent beyond having a void *.

Where did someone dictate that you have to include sys/intr.h, and for what? With the little details you've given it sounds like you're imposing restrictions on yourself, there's no hard requirement on INTRNG to include machine/intr.h. I don't see anything in your change offhand that's prevented by INTRNG consumers wanting sys/intr.h instead of machine/intr.h. You can include just the header you actually need.

Oct 8 2024, 11:03 PM
ehem_freebsd_m5p.com added a comment to D47002: sys/intr.h: formally depend on machine/intr.h.
In D47002#1071804, @imp wrote:

If you need a type that's really MI, define it in a MI header (say machine/types.h or invent machine/interrupt.h). End of problem. There's not even a need for #ifdef anything. Just include machine/interrupt.h which has a well defined interface (because you just defined it and it has no historical issues).

Oct 8 2024, 10:48 PM
ehem_freebsd_m5p.com added a comment to D47002: sys/intr.h: formally depend on machine/intr.h.

You already need to #ifdef INTRNG for machine/intr.h, doing it for sys/intr.h is no worse in that regard. So kindly calm down.

Oct 8 2024, 10:14 PM
ehem_freebsd_m5p.com added a comment to D47002: sys/intr.h: formally depend on machine/intr.h.
In D47002#1071690, @imp wrote:

This is the more typical pattern.

See sys/endian.h including machine/endian.h for but one of many examples (though that example is a bit convoluted in spots due to slight differences between endian.h, sys/endian.h and machine/endian.h consumer expectations.

Oct 8 2024, 9:58 PM
ehem_freebsd_m5p.com requested changes to D47002: sys/intr.h: formally depend on machine/intr.h.

NO ABSOLUTELY NOT. The reason is this makes architecture-independent source impossible without a #ifdef INTRNG.

Oct 8 2024, 9:56 PM

Sep 22 2024

ehem_freebsd_m5p.com requested changes to D40161: arm64/intrng: add support for FIQs.

I suspect this needs to now be rebased onto main. I've got concerns, so I would like to take a look at what comes when the interaction with the FIQ stuff comes in. Simply asking looking for a temporary pause.

Sep 22 2024, 11:09 PM

Sep 13 2024

ehem_freebsd_m5p.com added inline comments to D40161: arm64/intrng: add support for FIQs.
Sep 13 2024, 8:59 PM
ehem_freebsd_m5p.com added inline comments to D41833: arm64: add support for FIQs.
Sep 13 2024, 8:25 PM
ehem_freebsd_m5p.com added a comment to D40161: arm64/intrng: add support for FIQs.

@jrtc27 my one concern was to alert everyone here that discussion has occurred elsewhere. I was thinking discussion might have ended here, but it is now clear it has not terminated. Now I know I need to be tracking both.

Sep 13 2024, 8:22 PM
ehem_freebsd_m5p.com added a comment to D40161: arm64/intrng: add support for FIQs.

I was trying to avoid enums because I didn't want to cement us into new KPI for other types when we can easily discriminate with an argument, and enums add room for error since they're a C construct.

Sep 13 2024, 8:19 PM
ehem_freebsd_m5p.com added a comment to D40161: arm64/intrng: add support for FIQs.

This is a real problem with having both Phabricator and GitHub. This got copied to GitHub and now there is some discussion there. This was likely due to the long pause after September 7th, someone really wanted this feature.

Sep 13 2024, 7:59 PM

Aug 1 2024

ehem_freebsd_m5p.com added inline comments to D46205: x86/xen: ignore error to fetch memory map in xen_arch_init_physmem().
Aug 1 2024, 9:51 PM
ehem_freebsd_m5p.com accepted D46205: x86/xen: ignore error to fetch memory map in xen_arch_init_physmem().

The one comment can be done on commit.

Aug 1 2024, 8:58 PM
ehem_freebsd_m5p.com added a comment to D46205: x86/xen: ignore error to fetch memory map in xen_arch_init_physmem().

This is basically okay, but there urgently needs to be a comment here. At a future point the versions of Xen which lack this hypercall will no longer have any support and the error should instead be returned. This will likely be at least 5 years before this can be done, but there should be a comment with specific information.

Aug 1 2024, 6:17 PM

Jul 30 2024

ehem_freebsd_m5p.com added a comment to D46123: x86/xen: use UNUSABLE e820 regions for external mappings.

Seems fine, though as this is x86-land so I'm not doing testing. I do strongly prefer this being a separate commit from D46122 as it now is.

Jul 30 2024, 4:02 AM
ehem_freebsd_m5p.com accepted D46122: xen: introduce a per-arch scratch mapping ranges.

I had expected to simply handle D44251 as a squash review, though this works too. I do want to note what the output of devinfo -u looks like.

Jul 30 2024, 3:57 AM

Jul 24 2024

ehem_freebsd_m5p.com added a comment to D39333: intrng: expose lower-level device interface for INTRNG.

I doubt it is possible to converge the interrupt infrastructures without exposing this interface. This interface is the common point duplicated on every architecture, so things go through here. The way to discourage access to this interface for your alternative interface to provide valuable services which simplify consumers. For my case (Xen) where the drivers already exist, using the higher-level interface would be much harder.

Jul 24 2024, 9:02 PM
ehem_freebsd_m5p.com resigned from D46089: xen/pvh: fix initialization of environment.

I'm catching all Xen via a Herald rule. This is deep in the x86 side where I haven't done experimentation. Looks plausible, but I'm not your reviewer.

Jul 24 2024, 8:33 PM

Jul 5 2024

ehem_freebsd_m5p.com added a comment to D39333: intrng: expose lower-level device interface for INTRNG.

The interesting part is the combination of D39333 with D35559 and D39178. The result would be most of this low-level interface would be highly similar to x86. If the "BUS" interface was split into a separate file, it might be possible to share this portion between INTRNG and x86 with some work (INTRNG presently has no support for processor domains).

Jul 5 2024, 5:25 PM
ehem_freebsd_m5p.com updated the diff for D39333: intrng: expose lower-level device interface for INTRNG.

Update to current tree status (reflecting GitHub). Now retains INTRNG's argument order for intr_add_handler(). x86 was convinced to match INTRNG and thus the two prototypes are now quite similar.

Jul 5 2024, 5:15 PM

Jun 22 2024

ehem_freebsd_m5p.com removed a reviewer for D35607: intrng: purge INTR_SOLO: mmel.
In D35607#836545, @mmel wrote:

INTR_SOLO have nothing to do with shared interrupts. It's a fast path for cascading interrupts, and instead of removing it, we should extend it to support pass-through interrupts, polish the API for it, and put it in the regular build. Both of these are common in the arm/aarch64 world, and we lose performance significantly in these cases (and the big question is whether this should help us for LPI interrupts as well).

Jun 22 2024, 12:39 AM

Jun 13 2024

ehem_freebsd_m5p.com added a comment to D40474: intrng: call pic_init_secondary on all registered PICs.

One other sort-of workable approach would be add a requirement for pic_init_secondary() implementations to be safe for being call multiple times. Then have intr_pic_init_secondary() loop through pic_list after calling PIC_INIT_SECONDARY(intr_irq_root_dev);.

Jun 13 2024, 10:20 PM
ehem_freebsd_m5p.com added a comment to D40474: intrng: call pic_init_secondary on all registered PICs.

Kind of overdue for action. I had already been moving discussion elsewhere.

Jun 13 2024, 9:16 PM

Jun 5 2024

ehem_freebsd_m5p.com added a comment to D43980: intrng: merge separated PIC types.

Rounding up reviewers and getting reviews updated seems to get done more effectively via GitHub. I'm concerned about GitHub's handling of open source projects, but if that is the only way to make progress...

Jun 5 2024, 4:03 AM

Jun 4 2024

ehem_freebsd_m5p.com added a comment to D45381: kern/dev/xen: Use the per-blkback-device uma(9) zone for the bio..

@royger under "Revision Contents" select the red tab "Stack (2 Open)". This is how Phabricator handles series and interrelated commits. The bits you were wondering about are there.

Jun 4 2024, 11:07 PM
ehem_freebsd_m5p.com added a comment to D43980: intrng: merge separated PIC types.

Does the silence mean it is now time to move this onto GitHub for landing? (may be better since this covers more than 1 commit)

Jun 4 2024, 3:45 AM
ehem_freebsd_m5p.com updated subscribers of D45381: kern/dev/xen: Use the per-blkback-device uma(9) zone for the bio..

The one to consider D45381 is @royger who handles the Xen interface for FreeBSD.

Jun 4 2024, 3:41 AM

May 11 2024

ehem_freebsd_m5p.com added a comment to D44262: x86/xen: fix accounted interrupt time.

Hopefully commenting doesn't cause this to reopen.

May 11 2024, 1:10 AM
ehem_freebsd_m5p.com added a comment to D40474: intrng: call pic_init_secondary on all registered PICs.

Ping D40474. I suspect the chosen approach will be D43980 -> D40474, but it would also be viable to simply restrict intr_pic_init_secondary() to only call for FLAG_PIC entries.

May 11 2024, 1:02 AM
ehem_freebsd_m5p.com added a comment to D38599: intrng: destroy event when deregistering source.

If nothing shows up on D38599 soon I might try GitHub since there seems better throughput there.

May 11 2024, 12:53 AM
ehem_freebsd_m5p.com added a comment to D40776: kern: remove clk_intr_event from non-ACPI.

I need a very good insecticide to get rid of the crickets inhabiting D40776.

May 11 2024, 12:50 AM
ehem_freebsd_m5p.com added a comment to D43980: intrng: merge separated PIC types.

Any word on D43980? Does seem appropriate to only create a single pic_list entry for combined PIC/MSI controllers.

May 11 2024, 12:49 AM
ehem_freebsd_m5p.com added a comment to D38602: kern/intr: have intr_event_destroy() return success on NULL event.

I think one real issue is what question is the caller most interested in having answered? (since C functions have a single return, only 1 question can be answered) Another is how is the caller likely to react if intr_event_destroy() gives an error return?

May 11 2024, 12:43 AM

May 10 2024

ehem_freebsd_m5p.com added a comment to D44251: x86/xen: use UNUSABLE e820 regions for foreign mappings.

Definitely want this, though still got some nitpicks.

May 10 2024, 9:58 PM

May 9 2024

ehem_freebsd_m5p.com added inline comments to D44251: x86/xen: use UNUSABLE e820 regions for foreign mappings.
May 9 2024, 6:16 AM
ehem_freebsd_m5p.com added inline comments to D44251: x86/xen: use UNUSABLE e820 regions for foreign mappings.
May 9 2024, 12:44 AM

May 8 2024

ehem_freebsd_m5p.com added a comment to D44251: x86/xen: use UNUSABLE e820 regions for foreign mappings.

Got it working on arm64 and this does indeed seem a better approach to one issue.

May 8 2024, 11:01 PM
ehem_freebsd_m5p.com added a comment to D44251: x86/xen: use UNUSABLE e820 regions for foreign mappings.

I don't know what the commits look like behind the scenes. I think implementing the use of &unpopulated_mem should be a separate commit from adding the use of the e820 region.

May 8 2024, 7:30 PM
ehem_freebsd_m5p.com added inline comments to D44251: x86/xen: use UNUSABLE e820 regions for foreign mappings.
May 8 2024, 4:14 AM

May 7 2024

ehem_freebsd_m5p.com added a comment to D44251: x86/xen: use UNUSABLE e820 regions for foreign mappings.

Right now mostly looks okay, but my initial test failed. Could be my implementation failed, but right now I'm hunting an issue.

May 7 2024, 11:02 PM

Apr 11 2024

ehem_freebsd_m5p.com resigned from D44262: x86/xen: fix accounted interrupt time.

This is acceptable to me, but I believe the desire is have an okay by @markj. I believe resigning should make this more visible to @markj, rather than accepting.

Apr 11 2024, 9:00 PM

Apr 3 2024

ehem_freebsd_m5p.com added a comment to D44262: x86/xen: fix accounted interrupt time.

I think the usual is to let the differential owner do the update. Otherwise the steps end up being "Commandeer Revision", update, "Foist Upon".

Apr 3 2024, 10:23 PM

Mar 8 2024

ehem_freebsd_m5p.com requested changes to D44262: x86/xen: fix accounted interrupt time.

Most of what is presently here is definitely wrong. xen_intr_handle_upcall() retrieving the trapframe from curthread->td_intr_frame is definitely right. Issue is xen_intr_handle_upcall() needs to behave as a proper driver_filter_t for the XenPCI support. ARM(64) and RISC-V also need this, likely PowerPC would need similar. I do see two ways forward though:

Mar 8 2024, 11:22 PM

Mar 7 2024

ehem_freebsd_m5p.com added a comment to D44251: x86/xen: use UNUSABLE e820 regions for foreign mappings.

I think so (suddenly worried about famous last words).

Mar 7 2024, 8:27 PM
ehem_freebsd_m5p.com added inline comments to D44262: x86/xen: fix accounted interrupt time.
Mar 7 2024, 8:22 PM
ehem_freebsd_m5p.com added inline comments to D44262: x86/xen: fix accounted interrupt time.
Mar 7 2024, 5:45 PM
ehem_freebsd_m5p.com added a comment to D44251: x86/xen: use UNUSABLE e820 regions for foreign mappings.

This is oddly similar to what Julien Grall did in 2015. For aarch64 the suggested range for the shared information page is available to the platform device. Perhaps the architecture should pass the struct resource * to xenpv?

Mar 7 2024, 5:28 PM
ehem_freebsd_m5p.com added inline comments to D44262: x86/xen: fix accounted interrupt time.
Mar 7 2024, 5:09 PM
ehem_freebsd_m5p.com added inline comments to D44262: x86/xen: fix accounted interrupt time.
Mar 7 2024, 5:02 PM
ehem_freebsd_m5p.com added a comment to D44262: x86/xen: fix accounted interrupt time.

If you check your archive of e-mail you will find I expressed uncertainty over whether curthread->td_intr_nesting_level should be incremented/decremented. Removing that is fine, but the rest is wrong.

Mar 7 2024, 4:12 PM

Mar 5 2024

ehem_freebsd_m5p.com added a comment to D35559: intrcompat: rename "machine/intr*.h" to "machine/a_bikeshed_string_for_sed_to_target.h".

So, most approaches to getting interrupt subsystems to converge are going to need something along the lines of D35559 at some point. Might it be possible to get a decision/activity on D35559?

Mar 5 2024, 12:11 AM
ehem_freebsd_m5p.com added a comment to D40474: intrng: call pic_init_secondary on all registered PICs.

I had been thinking @jrtc27 was supposed to remove her "changes requested" tag, yet I was advised she thought @mmel should instead review the replacement. So, still need a decision as to whether the approach is D43980 -> D40474, versus intr_pic_init_secondary() only calling for FLAG_PIC entries.

Mar 5 2024, 12:06 AM

Feb 23 2024

ehem_freebsd_m5p.com updated the diff for D35386: intr/x86: replace use of vector in interface with intsrc.

Update to better reflect current state of FreeBSD tree. My repository had several patches, one of which had modified intr_describe(). As such this better reflects current state.

Feb 23 2024, 6:06 PM

Feb 20 2024

ehem_freebsd_m5p.com added inline comments to D40166: intrng: allocate event during isrc setup.
Feb 20 2024, 8:45 PM
ehem_freebsd_m5p.com updated the diff for D40166: intrng: allocate event during isrc setup.

Splitting D40166 back up. While I like the second part, it is lower value. This would serve to make all architectures noticably more similar.

Feb 20 2024, 8:37 PM
ehem_freebsd_m5p.com updated the diff for D35406: intr/x86: remove ->pic_vector() from x86 interrupt framework.

Change the approach and use ->is_event->ie_irq for places besides intr_register_source(). Since D35386 is now a parent, the vector value can disappear from xen_arch_isrc_t. msi_irq can also disappear, but that is more involved.

Feb 20 2024, 8:25 PM
ehem_freebsd_m5p.com updated the diff for D35386: intr/x86: replace use of vector in interface with intsrc.

Due to D36901 getting in first, intr_bind() disappeared. As threatened, I really like intr_add_handler()'s first two arguments being in the opposite order. Not only does this seem more consistent with the rest of the interface, but this also matches INTRNG (the domain argument is now the only difference).

Feb 20 2024, 8:14 PM

Feb 19 2024

ehem_freebsd_m5p.com added reviewers for D43980: intrng: merge separated PIC types: jrtc27, mmel.

This is another approach to the issue pointed out in D40474, mainly using ->pic_flags as flags and allowing a pic_list entry to fill both roles.
Another variant of this strategy would be to add a pair of boolean arguments to intr_pic_register() so the caller would indicate which roles they can fill. This variant could be argued to be better as each layer of the implementation could get its own pic_list entry.

Feb 19 2024, 8:13 PM
ehem_freebsd_m5p.com requested review of D43980: intrng: merge separated PIC types.
Feb 19 2024, 7:58 PM
ehem_freebsd_m5p.com added a comment to D43928: x86/xen: fix out of bounds access to the event channel masks on resume.

Depending on where xen_intr_disable_source() and xen_intr_disable_intr() were being called from, this is fixing both 1797ff962769 and some other commit. Certainly 1797ff962769 may have exposed this, but the is_valid_evtchn() call was needed earlier (could be rG76acc41fb7c7, or even before).

Feb 19 2024, 7:56 PM

Feb 15 2024

ehem_freebsd_m5p.com added a comment to D40474: intrng: call pic_init_secondary on all registered PICs.

I'm really struggling to understand what the source of confusion here is.

Feb 15 2024, 11:48 PM
ehem_freebsd_m5p.com added a comment to D40474: intrng: call pic_init_secondary on all registered PICs.

@jrtc27 not being on intimate terms with the GICv3 implementation and lacking hardware to confirm how things work, I've got no idea what to do. What I do know is the extra PIC for this device never gets into sc->gic_children and therefore the loop in gic_v3_init_secondary() doesn't work for this device.

Feb 15 2024, 10:30 PM

Feb 6 2024

ehem_freebsd_m5p.com added a comment to D40474: intrng: call pic_init_secondary on all registered PICs.

@jrtc27 I was hoping for an answer to my question before doing anything.

Feb 6 2024, 8:06 PM
ehem_freebsd_m5p.com updated the diff for D40474: intrng: call pic_init_secondary on all registered PICs.

Uploading the obvious SLIST->STAILQ adjustment.

Feb 6 2024, 8:03 PM