primordic/IssueDupesLite huggingface dataset:
Repository: libuv/libuv

Issue #276: Callback won't fire on async handle if unref'd and primed before uv_run()
Created: 2015-03-19T17:07:30Z
#include <assert.h>
#include "uv.h"

static void async_cb(uv_async_t* handle) {
  *(unsigned*) handle->data += 1;
}

int main(void) {
  uv_loop_t loop;
  uv_async_t handle;
  unsigned numcalls;

  assert(0 == uv_loop_init(&loop));
  assert(0 == uv_async_init(&loop, &handle, async_cb));
  handle.data = &numcalls;
  numcalls = 0;

  uv_unref((uv_handle_t*) &handle);
  assert(0 == uv_async_send(&handle));
  assert(0 == uv_run(&loop, UV_RUN_DEFAULT));
  assert(1 == numcalls);  /* Fails because numcalls == 0. */

  return 0;
}
It's arguably a bug.  At the very least, it's unexpected.
/cc @petkaantonov

Duplicate issue #2370: rfc: always poll for I/O in uv_run()?
Created: 2019-07-09T08:41:55Z
Refs: nodejs/node#28502
Libuv does not poll for I/O when there are no ref'd handles. In the linked issue that causes Node.js to miss the SIGTERM event because the uv_signal_t is unref'd and it's the only active handle.
We can do 1 of 3 things:


Do nothing. It's the documented behavior.


Special case : poll with a zero timeout when any signal handles are active, ref'd or unref'd. Complicated because uv_loop_t doesn't track them explicitly.


General case: always poll for I/O in uv_run(). It's an easy fix but a change in behavior. Maybe it's the behavior most people expect though.


diff --git a/src/unix/core.c b/src/unix/core.c
index 202c75bb..2d15a934 100644
--- a/src/unix/core.c
+++ b/src/unix/core.c
@@ -351,8 +351,11 @@ int uv_run(uv_loop_t* loop, uv_run_mode mode) {
   int ran_pending;

   r = uv__loop_alive(loop);
-  if (!r)
+  if (r == 0) {
     uv__update_time(loop);
+    mode = UV_RUN_NOWAIT;
+    r = 1;
+  }

   while (r != 0 && loop->stop_flag == 0) {
     uv__update_time(loop);
Makes the check_ref, idle_ref and prepare_ref tests fail because they don't expect to have their callbacks called.
Has a minor inefficiency calling uv__update_time() twice when loop->stop_flag == 0 but that can be fixed.

Closing comment (2019-08-13T22:56:49Z): Belated: this issue is a duplicate of #276 from 2015, also reported by yours truly.
Repository: lightningdevkit/rust-lightning

Issue #2433: Implement new simple coop close
Created: 2023-07-19T21:30:54Z
As discussed in NYC LN Summit + described here lightning/bolts#1096

Duplicate issue #2733: Coop close v3 (`option_simple_close`)
Created: 2023-11-14T00:21:38Z
We should do this, maybe once LND implements it we can finally drop our own coop close v1 code that results in force-closes with LND nodes regularly - lightning/bolts#1096

Closing comment (2023-11-17T07:34:00Z): Duplicate of #2433
Repository: lightningdevkit/rust-lightning

Issue #1537: Investigate/improve performance benchmarking in CI
Created: 2022-06-10T20:59:05Z
What do we already measure performance-wise in CI?
Do we pay attention to it? (106 might've had a regression? 107 has a massive win...no one noticed until @devrandom)
What more could easily be added?

Slack discussion for context https://lightningdevkit.slack.com/archives/CTDGZN1T9/p1654894461383259?thread_ts=1654865456.691709&cid=CTDGZN1T9

Duplicate issue #1667: do performance benchmarking of LDK
Created: 2022-08-13T21:40:16Z
Measure a variety of things such as:

Storage size of LDK optimized binaries on each platform (Rust, Swift, Kotlin, JS, etc.). With and without no_std. If there are other optional components isolate and measure them too.
Memory (RAM) size of LDK along a variety of dimensions. Minimum memory required for a base case (0 peers, 0 channels) and perhaps 1 peer 1 channel. Then marginal memory requirement per peer, per channel, per state update. Also gossip data vs. rapid gossip data vs. none (ie server side pathfinding).
CPU performance for signing/doing a state update on send and receive. CPU performance for finding a path. etc.

Ideally could make this part of CI so we're automatically measuring and detecting improvements and regressions.

Closing comment (2022-08-15T11:05:53Z): Seem this is a duplicate of #1537 ? But since this one is more specific, maybe close the older issue?
Repository: lightningdevkit/rust-lightning

Issue #2480: Add channel_id to SpendableOutputs event
Created: 2023-08-07T23:59:10Z
What
There currently isn't a way to link SpendableOutputs and ChannelMonitor. One can get around this by checking a ChannelMonitor's claimable balances
ldkService.getChannelMonitors().filter { it._claimable_balances.isEmpty() }

Why
The channel_id should be added to SpendableOutputs event which could be persisted so clients of LDK can:

easily prune its corresponding ChannelMonitor after processing this event
confirm with a database query if a ChannelMonitor is safe to prune
reconcile funds using database queries

Duplicate issue #2489: Include channel info in `SpendableOutput`s
Created: 2023-08-11T21:10:58Z
This helps users correlate spendable outputs to individual channels (CC https://github.com/orgs/lightningdevkit/discussions/2407).

Closing comment (2023-08-13T22:09:03Z): Oops, dup of  #2480.
Repository: lightningdevkit/rust-lightning

Issue #2385: `Process_events_multithreaded` is flaky
Created: 2023-06-30T02:52:03Z
CI on latest main said:

failures:

---- ln::peer_handler::tests::test_process_events_multithreaded stdout ----
thread 'ln::peer_handler::tests::test_process_events_multithreaded' panicked at 'assertion failed: val <= 2', lightning/src/ln/peer_handler.rs:3153:13
stack backtrace:
   0: rust_begin_unwind
             at /rustc/dbf31f17d020475885f50fb7d5fc15ff239843d8/library/std/src/panicking.rs:593:5
   1: core::panicking::panic_fmt
             at /rustc/dbf31f17d020475885f50fb7d5fc15ff239843d8/library/core/src/panicking.rs:67:14
   2: core::panicking::panic
             at /rustc/dbf31f17d020475885f50fb7d5fc15ff239843d8/library/core/src/panicking.rs:117:5
   3: lightning::ln::peer_handler::tests::test_process_events_multithreaded
             at ./src/ln/peer_handler.rs:3153:4
   4: lightning::ln::peer_handler::tests::test_process_events_multithreaded::{{closure}}
             at ./src/ln/peer_handler.rs:3117:41
   5: core::ops::function::FnOnce::call_once
             at /rustc/dbf31f17d020475885f50fb7d5fc15ff239843d8/library/core/src/ops/function.rs:250:5
   6: core::ops::function::FnOnce::call_once
             at /rustc/dbf31f17d020475885f50fb7d5fc15ff239843d8/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.


failures:
    ln::peer_handler::tests::test_process_events_multithreaded

test result: FAILED. 723 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 22.38s

Duplicate issue #2758: `ln::peer_handler::tests::test_process_events_multithreaded` is flaky
Created: 2023-11-29T03:43:23Z
https://github.com/lightningdevkit/rust-lightning/actions/runs/7026258203/job/19118670867?pr=2755

Closing comment (2023-11-29T04:38:06Z): Dup of #2385.
Repository: lightningdevkit/rust-lightning

Issue #2096: Don't discard create _channel if a peer goes away
Created: 2023-03-10T04:56:43Z
Or if they're not connected. We should just retry for a timer tick and then generate a ChannelFailed. Docs should note that users can always refuse to fund or force close if they don't want a channel, but the peer getting disconnected at an exactly inopportune moment seems not worth failing for.

Duplicate issue #2437: Fail `create_channel` early if peer is disconnected
Created: 2023-07-21T08:13:43Z
We need to ensure in the case where a peer is disconnected that we fail early when we invoke ChannelManager::create_channel for their_network_key.
The only thing we currently do is check if we know about the peer at all (they're in the per_peer_state): 
  
    
      rust-lightning/lightning/src/ln/channelmanager.rs
    
    
         Line 2195
      in
      e4c44f3
    
  
  
    

        
          
           let peer_state_mutex = per_peer_state.get(&their_network_key) 
        
    
  


We also need to check for .is_connected if we know about the peer.
See #2382 (comment)

Closing comment (2023-11-12T22:07:57Z): Oh, oops, dup of #2096.
Repository: lightningdevkit/rust-lightning

Issue #1157: Expose pending payment set from `ChannelManager`
Created: 2021-11-04T20:29:33Z
Users probably need that, eg sample, see lightningdevkit/ldk-sample#40 (comment)

Duplicate issue #1274: Expose pending HTLC list in ChannelDetails
Created: 2022-01-24T05:02:00Z

Closing comment (2022-01-26T23:04:28Z): This is a dup of  #1157
Repository: lightningdevkit/rust-lightning

Issue #2339: Allow to set maximum total fees during routing
Created: 2023-06-05T11:48:45Z
We should give users the capability of setting a hard cap for the routing fees, e.g, through PaymentParameters::max_total_routing_fee or similar.
This might also go hand-in-hand with #495, as such an upper bound might give us some indication of a privacy budget we're allowed to spend on finding more reliable or more random routes.

Duplicate issue #2409: Add max fee to payment params
Created: 2023-07-13T03:43:17Z
We really need this, kinda dumb that we don't have it. Luckily it's trivial.

Closing comment (2023-07-13T12:35:03Z): Closing, as this is a duplicate of #2339
Repository: lightningdevkit/rust-lightning

Issue #1394: Add `ChannelConfirmed` Event
Created: 2022-03-29T19:37:54Z
... (and maybe a ChannelOpened/Accepted event)?

Duplicate issue #1489: `ChannelAccepted` and `ChannelConfirmed` Events
Created: 2022-05-18T17:45:13Z
We should have events for when channels are accepted and confirmed/usable on-chain.

Closing comment (2022-05-18T17:45:43Z): Oops, dup of  #1394
Repository: lightningdevkit/rust-lightning

Issue #2088: Async + Fallible Signing 
Created: 2023-03-08T21:25:08Z
#1538 attempted to make our signing fallible (eg "usb signer is disconnected"). Since we redid the monitor/commitment-signing pipelines this should be much more practical now. However, when we do this we should also consider having the pipelines all be optionally-async. This would allow for proper remote signing without everything being blocked on RPC calls which is the only way to do it today.

Duplicate issue #2214: Handle signing failures better now that we aggressively rebroadcast
Created: 2023-04-22T16:55:50Z
Some of our signing methods can return a result, but our handling of those is somewhat inconsistent. In some cases we just "handle" the errors by panicing.
There's two places we need to figure out handling - in the channelmonitor enforcing on-chain and in the channel handling off-chain updates.
In the ChannelMonitor, previously we couldn't really do much because we only lazily rebroadcasted and expected user broadcaster implementations to rebroadcast, but now we rebroadcast aggressively and we can realistically handle this somewhat better, actually failing to sign and letting the user call rebroadcast again when they're ready.
On the channel end we similarly previously couldn't do much, but the actual signing of new states is now done async after handling monitor updates and the messages themselves, so I think its possible we could do something similar. Of course we'll have to tell users the absolutely cannot try to return errors on a routing node cause things will just hang, but for an end-user node its okay.

Closing comment (2023-07-13T17:40:12Z): Dup of #2088
Repository: lightningdevkit/rust-lightning

Issue #2724: Simplify serialization where backwards compat. to LDK prior 0.0.113 kept us from doing so
Created: 2023-11-10T08:29:17Z
In #2708 we broke compatibility with serialization prior to 0.0.113.
We should explore what parts of our serialization can be simplified now that we don't need to provide backwards compat prior to 0.0.113 anymore.

Duplicate issue #3625: Remove `Option` from fields introduced prior to 0.0.113
Created: 2025-02-26T23:15:41Z
Now that #3604 removes support from upgrading from versions prior to 0.0.113, we can remove Option from applicable fields. See #3604 (comment).

Closing comment (2025-03-03T08:05:37Z): This is a duplicate of #2724
Closing for now, please reopen if I'm misunderstanding something.
Repository: linux-test-project/ltp

Issue #288: Write tests for recvmmsg()
Created: 2018-05-10T15:36:36Z
See: http://man7.org/linux/man-pages/man2/recvmmsg.2.html

Duplicate issue #289: Write tests for sendmmsg()
Created: 2018-05-10T15:42:35Z
See: http://man7.org/linux/man-pages/man2/sendmmsg.2.html

Closing comment (2018-06-18T11:40:11Z): Related to #288
Repository: linux-test-project/ltp

Issue #1035: cgroup_fj_stress.sh, cn_pec.sh and memcg_failcnt.sh test cases are resulting in TBROK
Created: 2023-04-28T13:11:07Z
cgroup_fj_stress.sh, cn_pec.sh and memcg_failcnt.sh test cases are resulting in TBROK.
cgroup_fj_stress 1 TBROK: Test didn't report any results
cn_pec 1 TBROK: Test didn't report any results
memcg_failcnt 1 TBROK: Test didn't report any results
This issue is similar to #1033.
After changing the test function parameter and test function itself to "do_test" from test, the tests are passing.
cgroup_fj_stress 1 TPASS: All done!
cn_pec 1 TPASS: All events detected
memcg_failcnt 3 TPASS: memory.failcnt is 37, > 0 as expected

Duplicate issue #1041: fs_bind* test cases reporting TBROK
Created: 2023-05-23T10:47:56Z
fs_bind* test cases were either failing or broken
fs_bind_rbind36 1 TBROK: Test didn't report any results
fs_bind02 1 TBROK: Test didn't report any results
fs_bind24 1 TBROK: Test didn't report any results
The following code block in the path /testcases/kernel/fs/fs_bind/fs_bind_lib.sh

232 fs_bind_test()
233 {
234         _fs_bind_setup_test
235
236         if type ${FS_BIND_TESTFUNC}1 > /dev/null 2>&1; then
237                 "$FS_BIND_TESTFUNC$_tst_i" $1
238         else
239                 "$FS_BIND_TESTFUNC" $1
240         fi
241
242         _fs_bind_cleanup_test
243 }

After the following change sthe tests are passing
232 fs_bind_test()
233 {
234         _fs_bind_setup_test
235
236         "$FS_BIND_TESTFUNC" $1
237         if type ${FS_BIND_TESTFUNC}1 > /dev/null 2>&1; then
238                 "$FS_BIND_TESTFUNC$_tst_i" $1
239         fi
240
241         _fs_bind_cleanup_test
242 }
243

Closing comment (2023-12-05T10:22:52Z): This issue is similar to #1035
There are 94 testcases, instead of changing the test name in each testcase I have modified the fs_bind_lib.sh file in a way to fix the issue. please go through the attached logs.
Repository: linux-test-project/ltp

Issue #509: msgstress tests should scale number of processes accodingly to available RAM
Created: 2019-03-14T10:35:53Z
The msgstress tests (previously msgctl08 - msgctl11) should scale number of processes accordingly to the amount of free RAM, currently the hardcoded values needs slightly more than 1GB on x86_64 and possibly more on ppc64le due to larger page size.

Duplicate issue #805: TFAIL  :  msgstress03.c:155: 	Fork failed
Created: 2021-03-30T11:55:48Z
Hi,
i am running ltp 5.10.19 and 5.10.22 custom linux kernel on riscv with LTP version: 20200515 but i am facing following issues
Fork failed (may be OK if under stress)
Fork failed (may be OK if under stress)
Fork failed (may be OK if under stress)
Fork failed (may be OK if under stress)
Fork failed (may be OK if under stress)
Fork failed (may be OK if under stress)
msgstress03    1  TFAIL  :  msgstress03.c:155: 	Fork failed (may be OK if under stress)
Attaching the complete log file of msgstress03 along with strace output.
can someone help to get it fixed
msgstress03_log.txt
msgs03_strace.txt

Closing comment (2021-05-14T12:46:31Z): Closing as duplicate of #509
Repository: linux-test-project/ltp

Issue #807: Some addresses in LTP cases are out of range under lib32 rootfs
Created: 2021-04-06T08:55:21Z
As below, there are some test cases failed because of addresses out of range, which is quite similar to #193
adjtimex02 FAIL 2
getitimer02 FAIL 2
getrusage02 FAIL 2
msgctl04 FAIL 2
msgget02 FAIL 1
msgrcv02 FAIL 2
sched_rr_get_interval03 FAIL 2
semctl03 FAIL 2
setitimer02 FAIL 2
shmctl02 FAIL 2
For an instance, adjtimex02 failed without handling the singnal of SIGSEGV.
...
<<<test_start>>>
tag=adjtimex02 stime=1597559401
cmdline="adjtimex02"
contacts=""
analysis=exit
<<<test_output>>>
tst_buffers.c:55: INFO: Test is using guarded buffers
tst_test.c:1244: INFO: Timeout per run is 0h 05m 00s
tst_test.c:1291: BROK: Test killed by SIGSEGV!
Summary:
passed 0
failed 0
skipped 0
warnings 0
<<<execution_status>>>
initiation_status="ok"
duration=0 termination_type=exited termination_id=2 corefile=no
cutime=0 cstime=2
<<<test_end>>>
...
To simplied the test code in adjtimex02.c as the following, "bufp = (struct timex *)-1;" which assigns the "0xffffffff"  (for 32 bit)  address to bufp and adjtimex try to fetch content from bufp ,the target SIGSEGV the access since the address is out of range.

int main()
{
struct timex *bufp;
bufp = (struct timex *)-1;
adjtimex(bufp);
return 0;
}

Duplicate issue #803: recvmmsg:bad address test will  trigger  segment fault segment fault  in libc on 32bit system.
Created: 2021-03-17T00:41:56Z
The recvmmsg bad timeout address will trigger a segment fault when use glibc(valid_timespec64_to_timespec()  ) on 32bit system.
These LTP tests that check for EFAULT on invalid addresses are inherent wrong,
and LTP is fixing them over the releases once libc need to wrap the arguments
to support different things (such as LFS, 64 bit time, etc.).
(If LTP wants to check for EFAULT semantic it should issue the syscall directly
without libc).

Closing comment (2021-05-14T12:47:45Z): This is the same as #807 let's track it there.
Repository: linux-test-project/ltp

Issue #489: Test for CVE-2017-1000112
Created: 2019-02-06T16:07:07Z
See:
https://github.com/xairy/kernel-exploits/blob/master/CVE-2017-1000112/poc.c

Duplicate issue #494: Test for CVE-2017-1000112
Created: 2019-02-06T16:17:47Z
See:
https://github.com/xairy/kernel-exploits/blob/master/CVE-2017-1000112/poc.c

Closing comment (2020-04-22T09:34:28Z): This is duplicate of #489
Repository: linux-test-project/ltp

Issue #289: Write tests for sendmmsg()
Created: 2018-05-10T15:42:35Z
See: http://man7.org/linux/man-pages/man2/sendmmsg.2.html

Duplicate issue #288: Write tests for recvmmsg()
Created: 2018-05-10T15:36:36Z
See: http://man7.org/linux/man-pages/man2/recvmmsg.2.html

Closing comment (2018-06-18T11:40:03Z): Related to #289
Repository: linux-test-project/ltp

Issue #690: "cpuset_load_balance_test" failed because cpuset_cpu_hog exits before "wait $pid"
Created: 2020-06-04T21:42:46Z
LTP version: 20200515
When running cpuset_load_balance_test on a intel x86-64 board with multi-nodes, it always shows failed like:
cpuset_load_balance 1 TFAIL: load balance test failed.
This is because the last command "wait $pid" of general_load_balance_test() failed:
https://github.com/linux-test-project/ltp/blob/master/testcases/kernel/controllers/cpuset/cpuset_load_balance_test/cpuset_load_balance_test.sh#L143
The reason is "/bin/kill -s SIGUSR2 $pid 2> $CPUSET_TMP/stderr" in line 135 make cpuset_cpu_hog exit quicktly, when running "wait $pid", it's actaully waiting for nothing and failed finally.
Attached is the LTP running log and debugging log.
cpuset_load_balance_test.log
cpuset_load_balance_test_debug.log

Duplicate issue #685: [LTP] controller case 'cpuset_load_balance' failed
Created: 2020-05-27T06:12:58Z
Hello experts,
cpuset_load_balance process want to read from /dev/cpuset/cpuset.cpu_exclusive, but it get a wrong filename that /dev/cpuset/cpu_exclusive in fact.I wonder if the older version about /dev/cpuset/* are didn't have the "cpuset." prefix? If that, the func cpuset_query() in libcpuset.c should be updated.
The blow link is the detailed process for addressing the issue.(And sorry for the mess composition in the mail) http://lists.linux.it/pipermail/ltp/2020-February/015594.html
Thanks,
Yanfei

Closing comment (2020-10-09T07:16:18Z): This issue is same as #690 which has been fixed by commit ee1315c
Repository: linux-test-project/ltp

Issue #261: How to run ltp-aiodio.part1 on btrfs?
Created: 2018-04-24T06:48:23Z
Hi
The test file runtest/ltp-aiodio.part1 can be executed by ./runltp -f ltp-aiodio.part1 directly.
As it needs the extra junkfiles.
And although test scripts testscripts/ltp-aiodio.sh can setup needed files and run that test, it needs extra partition and doesn't support btrfs.
Is there any way to execute ./runltp -f ltp-aiodio.part1 on an existing directory other than a new partition?

Duplicate issue #971: run "./runltp -f ltp-aiodio.part3" failed
Created: 2022-09-14T06:30:47Z
The test error is caused by "No such file or directory".
The test command is "./runltp -f ltp-aiodio.part3"
The call sequence is following:
runltp -> ltp-pan -> ltp-aiodio.part3
And I find in no place create "$TMPDIR/aiodio.$$" directory.
output:
<<<test_start>>>
tag=FSX034 stime=1662538554
cmdline="fsx-linux -l 500000 -r 4096 -N 10000 $TMPDIR/aiodio.$$/junkfile"
contacts=""
analysis=exit
<<<test_output>>>
/tmp/ltp-qFoktcygy7/aiodio.435919/junkfile: No such file or directory
<<<execution_status>>>
initiation_status="ok"
duration=0 termination_type=exited termination_id=91 corefile=no
cutime=0 cstime=1
<<<test_end>>>
After I change junkfile to exist directory, the test is OK.
diff ltp-aiodio.part3_org ltp-aiodio.part3
4,5c4,5
< FSX032 fsx-linux -l 500000 -r 4096 -t 4096 -w 4096 -N 10000 $TMPDIR/aiodio.$$/junkfile
< FSX033 fsx-linux -l 500000 -r 4096 -t 2048 -w 2048 -N 10000 $TMPDIR/aiodio.$$/junkfile

FSX032 fsx-linux -l 500000 -r 4096 -t 4096 -w 4096 -N 10000 $TMPDIR/junkfile.$$
FSX033 fsx-linux -l 500000 -r 4096 -t 2048 -w 2048 -N 10000 $TMPDIR/junkfile.$$

test output:
tag=FSX032 stime=1662538553
cmdline="fsx-linux -l 500000 -r 4096 -t 4096 -w 4096 -N 10000 $TMPDIR/junkfile.$$"
contacts=""
analysis=exit
<<<test_output>>>
skipping zero size read
truncating to largest ever: 0x2c000
truncating to largest ever: 0x55000
truncating to largest ever: 0x5e000
truncating to largest ever: 0x74000
truncating to largest ever: 0x75000
truncating to largest ever: 0x79000
skipping zero size read
skipping zero size read
skipping zero size read
skipping zero size read
skipping zero size read
truncating to largest ever: 0x7a000
skipping zero size read
skipping zero size read
skipping zero size read
skipping zero size read
All operations completed A-OK!
<<<execution_status>>>
initiation_status="ok"
duration=0 termination_type=exited termination_id=0 corefile=no
cutime=17 cstime=10
<<<test_end>>>

Closing comment (2022-09-14T08:38:53Z): This is a duplicate of #261
Repository: linuxboot/heads

Issue #29: Qubes luks is not using the TPM for disk keys
Created: 2016-09-16T20:09:22Z
The disk key should be a combination of the user password and the TPM secret, currently it is just the user password.

Duplicate issue #5: Xen should receive encryption keys from TPM
Created: 2016-08-03T13:13:09Z
The TPM can unseal the disk keys, but it is currently not supported in Xen. Heads could pass it in as an command line option or other mechanism.

Closing comment (2016-11-29T03:46:35Z): Dupe of #29
Repository: linuxboot/heads

Issue #1550: Stop unpacking & repacking the initramfs
Created: 2023-12-12T03:25:51Z
Is your feature request related to a problem? Please describe.
Unpacking & repacking the initramfs is quite fragile and is not a very elegant solution.  More importantly, it is incompatible with Unified Kernel Images (UKIs) that combine the hypervisor, kernel, and initramfs into a single signed binary.
Describe the solution you'd like
Instead of Heads injecting the secret into the initramfs, Heads should leave the secret in the TPM for use by the kexec’d OS.  The OS is then responsible for using the secret to unlock the drive and for deleting the secret when no longer needed.
Describe alternatives you've considered
None.
Additional context
This might prevent #1545.  It also allows the OS to use other types of encrypted storage, such as encrypted ZFS or bcachefs volumes.

Duplicate issue #1480: Use TPM2_Quote for attestation
Created: 2023-08-25T19:35:22Z
Is your feature request related to a problem? Please describe.
TOTP requires synchronizing time, and HOTP requires synchronizing state.
Describe the solution you'd like
Use TPM2_Quote for attestation.  TPM2_Quote signs a set of PCRs and a nonce with a key in the TPM.  It is possible to have a key that can only be used for TPM2_Quote and cannot be exported from the TPM.
Describe alternatives you've considered
None.
Additional context
This is more secure than TOTP or HOTP for two reasons:

The secret used to sign the quote never leaves the TPM, making it much less likely to be accidentally leaked.
The qualifying data can be much longer than a 6 digit passcode.

Closing comment (2023-12-21T17:15:42Z): @DemiMarie Not directly related but #135 (comment) was replicated and works.
Also note that tpm-luks is a thing on which we could potentially try to comply to, so that unsealing of nvram based on sealed secret could be unsealed without heads having to construct cpio and pass to kexec. Rohde-Schwarz/TrustedGRUB2#2
As for Quote, we would have to make the code compliant for both TPM1.2/TPM2 cases, which needs time and effort.
Related to #1550
Repository: linuxboot/heads

Issue #958: keyboard backspace bug for x230-hotp-maximized (x230t)
Created: 2021-01-09T14:08:17Z
So I was excited to get heads installed and my nitrokey setup. But then realised I have some sort of bug on all three laptops. No matter the OS, if its linux it locks the screen or just doesn't do anything. Same issue on 1 x230 tablet and 2 x230 notebooks.
How can I go about fixing this? I'm not a seasoned developer so please have mercy on me.
Thank you

Duplicate issue #1557: HDMI output usually not available after cold boot
Created: 2023-12-19T16:05:46Z
Please identify some basic details to help process the report
A. Provide Hardware Details
1. What board are you using (see list of boards here)?
x230
2. Does your computer have a dGPU or is it iGPU-only?

 dGPU
 iGPU-only

3. Who installed Heads on this computer?

 Insurgo
 Nitrokey
 Purism
 Other provider
 Self-installed

4. What PGP key is being used?

 Librem Key
 Nitrokey Pro 2
 Nitrokey Storage
 Yubikey
 Other

5. Are you using the PGP key to provide HOTP verification?

 Yes
 No
 I don't know

B. Identify how the board was flashed
1. Is this problem related to updating heads or flashing it for the first time?

 First-time flash
 Updating heads

2. If the problem is related to an update, how did you attempt to apply the update?

 Using the Heads GUI
 Flashrom via the Recovery Shell
 External flashing

3. How was Heads initially flashed

 External flashing
 Internal-only / 1vyrain
 Don't know

4. Was the board flashed with a maximized or non-maximized/legacy rom?

 Maximized
 Non-maximized / legacy
 I don't know

5. If Heads was externally flashed, was IFD unlocked?

 Yes
 No
 Don't know

C. Identify the rom related to this bug report
1. Did you download or build the rom at issue in this bug report?

 I downloaded it
 I built it

2. If you downloaded your rom, where did you get it from?

 Heads CircleCi
 Purism
 Nitrokey
 Somewhere else (please identify)

Please provide the release number or otherwise identify the rom downloaded
https://circleci.com/gh/linuxboot/heads/14178 ( x230-hotp-maximized_usb-kb of 4a57c61)
Please describe the problem
Describe the bug
HDMI output is not available on cold boot (no signal). Pressing ctrl+alt+delete usually fixes it.
To Reproduce
Steps to reproduce the behavior:

Connect HDMI output to the laptop (via miniDP->HDMI converter)
Press power button

Expected behavior
Heads output on both internal screen and the external one.
Additional context
It wasn't a problem on a (much) older version - the one used for initial x230 Qubes OS certification.
I've tested also commit just before merging #1522 and the issue happens there too.

Closing comment (2023-12-22T21:53:25Z): Logs here.
cbmem-cold.txt
cbmem-warm.txt
dmesg-cold.txt
dmesg-warm.txt
I don't see much difference besides indeed coreboot log says HDMI is disabled on cold boot. BTW, after warm reboot Linux says input: AT Translated Set 2, while after cold boot it's input: AT Raw Set 2 keyboard - related to #958 ? Note, I stopped at Heads here (collected logs from recovery shell), Qubes (or any other OS) was not started between reboots.
Repository: linuxboot/heads

Issue #132: git commit hook should check for signature
Created: 2017-03-21T18:33:11Z
Some commits made it into the tree without GPG signatures.  The local git should prevent this from happening and we should have something that verifies it on the server side, too.

Duplicate issue #366: Pre-commit hook to check for signature
Created: 2018-03-15T15:06:05Z
We should prevent unsigned commits.

Closing comment (2018-03-16T15:59:52Z): Dupe of #132
Repository: linuxboot/heads

Issue #1480: Use TPM2_Quote for attestation
Created: 2023-08-25T19:35:22Z
Is your feature request related to a problem? Please describe.
TOTP requires synchronizing time, and HOTP requires synchronizing state.
Describe the solution you'd like
Use TPM2_Quote for attestation.  TPM2_Quote signs a set of PCRs and a nonce with a key in the TPM.  It is possible to have a key that can only be used for TPM2_Quote and cannot be exported from the TPM.
Describe alternatives you've considered
None.
Additional context
This is more secure than TOTP or HOTP for two reasons:

The secret used to sign the quote never leaves the TPM, making it much less likely to be accidentally leaked.
The qualifying data can be much longer than a 6 digit passcode.

Duplicate issue #1549: Use `TPM2_Quote` instead of TOTP/HOTP
Created: 2023-12-12T03:19:51Z
Is your feature request related to a problem? Please describe.
TOTP requires precise time synchronization, and HOTP is stateful and so fragile.
Describe the solution you'd like
Use TPM2_Quote or its TPM1.2 equivalent to get the TPM to sign the specific current PCR state, along with a challenge to prove freshness.  The hardware token can then verify the PCRs directly.
Describe alternatives you've considered
None.
Additional context
None.

Closing comment (2023-12-21T17:11:41Z): Self-Duplicate of #1480 ?
Please reopen otherwise @DemiMarie
Repository: linuxboot/heads

Issue #188: External kernel module builds pickup old kernel headers
Created: 2017-04-16T12:43:45Z
The zfs issue #187 revealed that the kernel-headers submodule has 3.12 headers, which will cause problems for submodules that want to build kernel modules outside of the linux tree.

Duplicate issue #186: EHCI kernel modules compiled for the wrong kernel
Created: 2017-04-15T01:38:16Z
I checked out and built the 0.2.0 release of Heads using the commands below and I can't get the USB kernel modules to load anymore.
git checkout -f v0.2.0
make modules.clean
make real.clean
make CONFIG=config/x230-flash.config

After flashing the new firmware onto an X230 via the SPI flasher and booting into Heads I get the following:
insmod /lib/modules/ehci-hcd.ko
ehci_hcd: version magic '4.9.7-heads_moc SMP ' should be '4.9.20-heads_moc SMP '
insmod: can't insert '/lib/modules/ehci-hcd.ko': invalid module format

Let me know if I'm missing something obvious or if there's anything I can try. Thanks!

Closing comment (2017-04-17T20:00:57Z): There were some major changes in the lead up to 0.2.0 that definitely required a clean checkout or a manual pruning of the file system to build correctly.  We might have a patch coming soon (related to #188 ) since we're moving to use the headers from our build kernel rather than the 3.x headers that we had been unpacking into install/include.
This one should be "fixed" by a make real.clean, without requiring a full removal of the build/ subdirectory, although that should always be a safe, if time consuming, step.
Repository: linuxboot/heads

Issue #697: openbsd and heads
Created: 2020-03-17T13:02:40Z
EDIT: Can Heads kexec into BSD?

original:
ping @tlaurion
Has anyone every gotten OpenBSD with FDE to work with heads?

Duplicate issue #982: OpenBSD Support for heads?
Created: 2021-03-02T16:07:36Z
When I get my nitropad and in the not so near future, I wondered if it would be possible to boot OpenBSD FDE (not including encrypted boot)

Closing comment (2021-03-02T17:52:35Z): Duplicate of #697
Repository: linuxboot/heads

Issue #702: Booting Arch Linux
Created: 2020-04-09T09:33:55Z
Looking at this issue in another context, I found out how to fix an issue I had in Arch Linux so far.
What is happening
When kexec is starting the Arch Linux kernel and initramfs, the screen is not showing anything. I found out that the system is booting normally, if I just blindly type in my luks passphrase.
How it should look
You should be able to see early messages of the initramfs, instead you only the kernel messages after assuming what is happening.
How to fix
Adding i915 module to the initramfs fixes this issue.

Duplicate issue #702: Booting Arch Linux
Created: 2020-04-09T09:33:55Z
Looking at this issue in another context, I found out how to fix an issue I had in Arch Linux so far.
What is happening
When kexec is starting the Arch Linux kernel and initramfs, the screen is not showing anything. I found out that the system is booting normally, if I just blindly type in my luks passphrase.
How it should look
You should be able to see early messages of the initramfs, instead you only the kernel messages after assuming what is happening.
How to fix
Adding i915 module to the initramfs fixes this issue.

Closing comment (2022-07-27T18:26:42Z): @lynxred ? #1117 was a duplicate of #702.
Have you built i915 driver to be put in initrd from installer?
Repository: linuxboot/heads

Issue #215: Video glitches when kexec into Ubuntu kernel
Created: 2017-07-16T07:50:00Z
At the coreboot session during http://hackon.nl, @kliment found that his x230 would cause VGA display glitches when kexec into a stock 4.4.0-83 Ubuntu kernel.
It looks like @flammit solution to getting Tails to boot #195 (comment) might fix it.  The problem is that the Heads kernel has turned on the IOMMU and Ubuntu is not expecting this, so it is necessary to add intel_iommu=on to the kexec kernel command line.

Duplicate issue #192: !qubes boot option
Created: 2017-04-23T10:35:44Z
Maybe there could be an option to kexec into xen/!xen linux env to a different distro which could use the same technique. for example one could do almost the same things that qubes does but on a different dom0 without systemd and with alpine (as an example). somehow I had no luck with booting a general
linux distribution with xen using kexec (maybe I'm missing something). I tried to use alpine-xen iso
for this and had no luck only semi-rainbow screen.

Closing comment (2017-07-17T16:48:04Z): The video glitch that you're seeing looks very similar to #215, so I wonder if the grsecurity kernel will work with the intel_iommu=on command line fix.
Repository: liquidprompt/liquidprompt

Issue #407: [OS X] Incorrectly detects a local session as telnet
Created: 2015-11-13T14:31:49Z
See #304 (comment) - as of commit 0d7d3fd the hostname is incorrectly detected as telnet.
Environment: OS X 10.11 (El Capitan).

Duplicate issue #492: Shell inside Tmux 2.3 is detected as Telnet
Created: 2016-11-30T09:05:47Z
Shell: bash
Operating system: Debian Stretch
Liquid Prompt version (tag, commit): def86eb
'who am i' returns something new with TMUX 2.3:
johndoe   pts/3        2016-11-29 20:53 (tmux(2262).%0)

It is not yet managed by _lp_connection(). I put this workaround locally but there is probably a better code to write:
_lp_connection()
{
    if [[ -n "$SSH_CLIENT$SSH2_CLIENT$SSH_TTY" ]] ; then
        echo ssh
    else
        # TODO check on *BSD
        local sess_src="$(who am i | sed -n 's/.*(\(.*\))/\1/p')"
        local sess_tmux="$(who am i | sed -n 's/.*(\(tmux.*\))/\1/p')"
        local sess_parent="$(ps -o comm= -p $PPID 2> /dev/null)"
        if [[ -z "$sess_src" || "$sess_tmux" = "tmux"* || "$sess_src" = ":"* ]] ; then
            echo lcl  # Local
        elif [[ "$sess_parent" = "su" || "$sess_parent" = "sudo" ]] ; then
            echo su   # Remote su/sudo
        else
            echo tel  # Telnet
        fi
    fi
}

Closing comment (2017-02-13T13:59:38Z): Note that #304 is not the same issue: the fix for #304 created a new bug, which was reported in #407. This issue is a duplicate of #407.
This issue was reported before the fix of #407, in commit 119477c. If @kianby tries the latest from master, his problem might be fixed.
Repository: liquidprompt/liquidprompt

Issue #526: Time for a new release?
Created: 2017-06-15T08:18:36Z
The previous release is more than a year old. What about releasing current master?

Duplicate issue #580: Set tag for current master
Created: 2019-08-10T16:17:17Z
Hey,
is it possible to add a tag for the current master HEAD? It seems to be forgotten.
It would help to add liquidprompt to nixpkgs, the package tree for the distro NixOS. See NixOS/nixpkgs#66429

Closing comment (2020-07-06T02:43:28Z): Closing this as duplicate of #526.
Work is progressing, you can follow the progression on the v1.12 milestone page.
Repository: liquidprompt/liquidprompt

Issue #686: Teperature only goes up
Created: 2021-10-05T18:27:09Z
Liquidprompt version:
master
Steps to Reproduce


Set LP_TEMP_THRESHOLD to something reachable
Reach the threshold
Observe the red and bold temperature appear in your prompt
Let the computer cool down
Observe the highest-measured temperature lingering in new prompts of the same shell

Expected Behavior

Temperature should update in every prompt (the sample is taken anyway).

Duplicate issue #610: Debug mode?
Created: 2020-06-26T15:08:53Z
Shell: bash
Operating system: Lubuntu 18.04
Liquid Prompt version (1.11, 488bb59):
Liquid Prompt is a great utility and I'm enjoying playing with it. There are so many flags that can be set that I'm having a hard  time determining which flags contributed to the final console prompt I see. It would be great if the tool had some kind of debug mode to explain which flags contributed to the final console prompt that I see.
Right now my prompt says:
10:54:27 θ127° [:~/install] $
I can't figure out what the θ127° represents and which flags caused those values to be added to the output. I don't see the theta symbol, θ, in the README file.

Closing comment (2022-04-24T21:56:44Z): This one is my mistake. You found a bug; one that I already fixed on the master branch, but I somehow missed was also on the stable branch. This is why I need to wrap up this changeset and just release 2.1 already...
Anyway, duplicate of #686, which was caused by 4c81ef4 and fixed in b6a7189. What I didn't remember at that time is that I had backported 4c81ef4 as 2c91f98 to v2.0.3, so the bug was still in the 2.0/stable line.
Simple fix; I can just backport b6a7189 to stable, and release v2.0.5.
Note this is off topic for this issue. I see why you thought it was related, but the original issue is a different request. I'm just solving this without opening a new issue since there is already an issue for this (#686), and I will be closing this issue shortly (see following comment).
Repository: liquidprompt/liquidprompt

Issue #161: SFTP support
Created: 2013-04-30T17:30:15Z
Since I've enabled liquidprompt by default in my .zshenv, it seems to broke sftp connection.
Did I missed something or is it a bug ?
Regards
Manitooo

Duplicate issue #278: "shell not supported" when running rsync over ssh
Created: 2014-02-23T12:44:31Z
rsync -an --delete /var/lib/z-push/ root@servername:/var/lib/z-push/
liquidprompt: shell not supported

This occurs whether or not I use the full path to rsync (/usr/bin/rsync).
Any idea why that might be occurring? Is it because rsync is working over SSH in this instance, but "rsync" is the shell, so the remote end is reporting that?
If so, I wonder if there is a way to catch whether or not rsync is being used and "ignore" it somehow?

Closing comment (2014-05-21T13:10:25Z): Closing as duplicate of #161 (and others) and due to an error in the user environment.
Repository: liquidprompt/liquidprompt

Issue #248: Fix battery display error
Created: 2013-12-10T21:02:02Z
I'm getting this error on MAC mavrics.
bash: [[: -InternalBattery-0 68: syntax error in expression (error token is "68")

To fix this change line 1163 from
local bat="$(cut -f2 <<<$pmset)"

to
local bat="$(cut -f2 -d' ' <<<$pmset)"

(add the -d' ')
I'll try to add a PR for this.

Duplicate issue #259: bash: [[: -InternalBattery-0 77: syntax error in expression (error token is "77")
Created: 2014-01-15T11:30:30Z
When I try to use LiquidPrompt on my Mac, I have the error bash: [[: -InternalBattery-0 77: syntax error in expression (error token is "77").

Closing comment (2014-12-08T10:06:05Z): duplicate of #248
Repository: liquidprompt/liquidprompt

Issue #793: Time for a release?
Created: 2023-10-23T03:09:49Z
Last tagged release was 150 commits and 27 months ago; I discovered this while trying to use the dotmatrix theme. Perhaps it is time?

Duplicate issue #808: Time for a new release?
Created: 2023-11-24T08:31:54Z
The last release is from June last year. Is it time to make a new one?

Closing comment (2023-11-24T17:14:52Z): Somewhat a duplicate of #793, though maybe I closed that one too early since v2.2.0 isn't quite out yet. I released v2.2.0-rc.1 a month ago, and just released v2.2.0-rc.2 just now.
Repository: liquidprompt/liquidprompt

Issue #154: Right prompt support
Created: 2013-04-25T21:52:27Z
Would be awesome if I can define it via the .liquidpromptrc, and not otherwise hack into the source code.

Duplicate issue #210: Provide (partitial) right prompt
Created: 2013-07-06T11:47:15Z
I like the Idea of displaying information as needed. But I dislike that the prompt results in different indent for my commands on each line.
Example:
[user:~] $ cd code/project
[user:code/project] feature_branch_with_my_branch_name $ 

You maybe say, that I should add a newline after the prompt, but this disturbes the reading-flow in my opinion and is really bad if you only have a small terminal (say on a small screen or when doing tiling). I don't want to have 10 lines when I could have 20!
Therefor, I would love to have the prompt on the right side, and only a really limited one on the left side:
[~] $ cd code/project                                                         [user:~]
[project] $                    feature_branch_with_my_branch_name [user: code/project]

It's just an idea, but maybe you guys like it!

Closing comment (2013-07-07T13:31:27Z): Duplicate of #154, currently discussing how to do it correctly.
Repository: liquidprompt/liquidprompt

Issue #360: bad return code on source
Created: 2015-04-29T10:48:31Z
bash-4.1$ . /home/local/users/jclement/workspace/rnd-toolkit/third-party/liquidprompt/liquidprompt
12:45:28 [jclement@thror:~] master* 1 ± echo $?
1

It is not a big problem but can cause problems for scripting

Duplicate issue #395: loading liquidprompt returns 1?
Created: 2015-09-24T07:55:13Z
Hi there!
It seems every time I source liquidprompt I get return code 1 (bash).
The test is rather simple:
% source liquidprompt ; echo $?
1

The only effect of this behaviour is that everytime a liquidprompt user opens a new prompt, the initial return code is 1, for example:
aborrero@deathstar:~ 1 $

Do you know why this happens?

Closing comment (2015-09-24T14:41:32Z): Duplicate of #360.
Repository: liquidprompt/liquidprompt

Issue #393: Multiple batteries
Created: 2015-09-21T15:59:47Z
17:57:45 ⌁47% towo@loki:~ 1 % acpi -V
Battery 0: Discharging, 46%, 00:55:17 remaining
Battery 0: design capacity 2809 mAh, last full capacity 2758 mAh = 98%
Battery 1: Unknown, 79%
Battery 1: design capacity 3863 mAh, last full capacity 3898 mAh = 100%

Pretty much says it all, I'd say.

Duplicate issue #493: Battery wrong when two batteries in a Thinkpad
Created: 2016-11-30T12:20:20Z
Shell: bash
Operating system:  Debian jessie
Liquid Prompt version (tag, commit): 5ee3c53
liquidprompt shows only the first battery and not the second one, too.
13:15:27 ⌁23% [cmg:~/workspace/liquidprompt.git] master 141 ± acpi
Battery 0: Discharging, 23%, 00:17:43 remaining
Battery 1: Unknown, 99%
tlp-stat -b |grep remaining_percent |awk '{ print $3 }'| tr '\n' ' '
gives a
100 20
or a
acpi |awk '{ print $4 }'| tr '\n' ' '
17%, 99%
could help here

Closing comment (2020-07-05T13:22:49Z): Duplicate of #393.
Repository: lit/lit

Issue #1132: [lit-html] partMap
Created: 2020-03-25T11:36:21Z
Initiative / goal
We have styleMap and classMap - how about partMap
Scope
Add a new directive to efficiently apply parts to an element
Acceptance criteria and must have scope
render() {
  const parts = {
    row: this.isRow,
    cell: this.isCell,
    column: this.isColumn
  }
  return html`
    <button part="${partMap(parts)}"></button>
  `;
}
Instigating example, a data-table component
/** @type {(cell: { row: DataRow, column: DataColumn }) => TemplateResult} */
dataCellTemplate({ row, column: { key, type } }) {
  const value = row.data[key];
  const parts = `cell ${type} ${key} ${row.id}`;
  return type === 'heading'
    ? html`<th part="${parts}">${value}</th>`
    : html`<td part="${parts}">${value}</td>`;
}
/* column.key === 'stage' */
data-table::part(cell data stage) {
  text-transform: capitalize;
}

Duplicate issue #4818: [lit-html] enable classMap directive inside part attributes
Created: 2024-11-01T01:07:08Z
Should this be an RFC?

 This is not a substantial change

Which package is this a feature request for?
Lit Core (lit / lit-html / lit-element / reactive-element)
Description
Hello,
I have the feeling that the part attribute in the templates could benefit of the classMap directive.
Alternatives and Workarounds
Here is an example of how I workaround this enhancement for now: https://github.com/benavern/z-autocomplete/blob/FT-with-shadow-dom/src/z-autocomplete.ts#L179-L190

Closing comment (2025-01-21T21:55:55Z): Dupe of #1132
We'd still accept a PR for this.
Repository: lit/lit

Issue #2723: [reactive-element] Consider adding `beforeUpdate`/`hostBeforeUpdate` lifecycle callback
Created: 2022-04-12T02:47:46Z
It is sometimes useful to have stateful computed properties. These are properties computed from other properties and stored directly on the element typically because one or more of the following is true. The property is: (1) useful public API, (2) expensive to compute and should only be computed when inputs change, (3) needed in the element but outside the render method (e.g. in an event listener).
It is currently recommended to compute these values in willUpdate(changedProperties) using changedProperties to conditionally recompute values.
However, unfortunately since willUpdate is called after shouldUpdate, computed properties set in willUpdate cannot inform shouldUpdate.
This is not commonly needed, but when it is, the only option is to compute the property in shouldUpdate, and this is not its intended purpose.
A beforeUpdate lifecycle method could address this issue. It would be called before shouldUpdate and could therefore be used to compute other properties that are inputs to shouldUpdate. It also makes sense to add the same hook to ReactiveController so that it can also participate in shouldUpdate.

Duplicate issue #3117: [reactive-element] Consider adding beforeFirstUpdate() or similar lifecycle method
Created: 2022-07-05T22:57:49Z
Which package is this a feature request for?
Lit Core (lit / lit-html / lit-element / reactive-element)
Description
It would be useful to have a lifecycle callback similar tofirstUpdated() that is called prior to first render.  This would allow for creation of resources or inspection/selection of details using properties (which are not available in the constructor).  connectedCallback() is not appropriate for this as render()will already have been called, resulting in a re-render almost immediately.
class FooController extends ReactiveController {
// ....
}

@customElement("Foo-consumer")
class FooConsumer extends LitElement {
  @property({type: Object})
  public config! : FooConfig;

  private controller?: FooController;
  private selectedDetail : BarDetail;

  protected beforeFirstUpdated() : void { 
    this.controller = new WhateverController(this.config.controllerOption);
    this.selectedDetail = this.config.availableDetails[0];
  }

  protected render() : unknown {
    return html`
      <div>
        <span>Controller says: ${this.controller.saySomething()}</span>
        <span>Selected detail?  ${this.selectedDetail.name}</span>
      </div>
    `;
  }
}
Alternatives and Workarounds
Currently the only workaround I've found is to have a check + creation at the top of the render method, but this is awkward and checks on every render, which isn't exactly ideal.

Closing comment (2022-07-05T23:00:45Z): This is similar to #2723 but is distinct, as it is concerned with the initialization process rather than easing calculated properties.