debdiff attached.
** Summary changed:
- ngspice-36 crashes in various ways
+ [SRU] ngspice-36 crashes in various ways
** Description changed:
+ [ Impact ]
+
+ ngspice will sometimes crash on some trivial circuits and will result in
Segmentation fault.
+ Though upstream mentioned these types of circuits causing the segfault as
"strange input".
+
+ [ Test Plan ]
+
+ * create a test file named "test.netlist" with the following content:
+ .title KiCad schematic
+ .save all
+ .probe alli
+ .end
+
+ * execute "ngspice" command
+ * run this command: "source test.netlist" on the ngspice prompt.
+
+
+ With the fixed package it will print:
+
+ Circuit: KiCad schematic
+
+ [ Where problems could occur ]
+
+ It is an upstream patch which only adds an check for a pointer before
+ dereferencing it and there is a little chance of any regression because
+ of this patch.
+
+ [ Other Info ]
+
+ The patch in the debdiff looks quite big but the real change is only:
+
+ @@ -1130,6 +1130,7 @@ static char* get_terminal_number(char* e
+ Called from inp.c*/
+ void modprobenames(INPtables* tab) {
+ GENinstance* GENinst;
+ + if (tab->defVmod) {
+ for (GENinst = tab->defVmod->GENinstances; GENinst; GENinst =
GENinst->GENnextInstance) {
+ char* name = GENinst->GENname;
+ /* Do not inlude the x in the new name, XU1 -> U1 */
+ @@ -1159,4 +1160,5 @@ void modprobenames(INPtables* tab) {
+ }
+ }
+ }
+ + }
+ }
+
+
+ [ Original Bug Description ]
+
$ lsb_release -rd
Description: Ubuntu 22.04.3 LTS
Release: 22.04
-
ngspice version: 36+ds-1
-
The following happens:
=============================================
ngspice is used by KiCad to simulate circuits.
I have noticed that ngspice tends to crash or fail on relatively simple
circuits.
Taking KiCad out of equation I can see that even trivialities lead to
crashes.
For example, create a text file "test.netlist" with the following
content:
--- CUT ---
.title KiCad schematic
.save all
.probe alli
.end
--- CUT ---
Then start ngspice command line tool and run this command: "source
test.netlist".
The results would be this:
--- CUT ---
No compatibility mode selected!
-
Circuit: KiCad schematic
Segmentation fault (core dumped)
--- CUT ---
Other than segmentation faults, sometimes ngspice attempts to allocate a
negative amount of memory (which also results in crashes).
-
The following is expected:
=============================================
I expect that ngspice would not crash and would instead either do what it is
asked to do or report errors.
-
Suggested change:
=============================================
Update ngspice from version 3.6 to version 4.2: I have built v4.2 myself and
checked - it appears to work or report genuine errors in all cases where the
old ngspice simply crashes with no apparent reason.
ProblemType: Bug
DistroRelease: Ubuntu 22.04
Package: ngspice 36+ds-1
ProcVersionSignature: Ubuntu 6.2.0-35.35~22.04.1-generic 6.2.16
Uname: Linux 6.2.0-35-generic x86_64
NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair
ApportVersion: 2.20.11-0ubuntu82.5
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: GNOME
Date: Wed Jan 10 14:32:41 2024
InstallationDate: Installed on 2021-07-03 (921 days ago)
InstallationMedia: Ubuntu-MATE 20.04.2.0 LTS "Focal Fossa" - Release amd64
(20210209.1)
RebootRequiredPkgs: Error: path contained symlinks.
SourcePackage: ngspice
UpgradeStatus: Upgraded to jammy on 2023-09-12 (119 days ago)
** Patch added: "ngspice.debdiff"
https://bugs.launchpad.net/ubuntu/jammy/+source/ngspice/+bug/2048906/+attachment/5754976/+files/ngspice.debdiff
** Description changed:
[ Impact ]
ngspice will sometimes crash on some trivial circuits and will result in
Segmentation fault.
Though upstream mentioned these types of circuits causing the segfault as
"strange input".
[ Test Plan ]
* create a test file named "test.netlist" with the following content:
.title KiCad schematic
.save all
.probe alli
.end
* execute "ngspice" command
* run this command: "source test.netlist" on the ngspice prompt.
-
With the fixed package it will print:
Circuit: KiCad schematic
[ Where problems could occur ]
It is an upstream patch which only adds an check for a pointer before
dereferencing it and there is a little chance of any regression because
of this patch.
[ Other Info ]
- The patch in the debdiff looks quite big but the real change is only:
+ The patch in the debdiff looks quite big due to the indentation changes
+ but the real change is only:
@@ -1130,6 +1130,7 @@ static char* get_terminal_number(char* e
- Called from inp.c*/
- void modprobenames(INPtables* tab) {
- GENinstance* GENinst;
+ Called from inp.c*/
+ void modprobenames(INPtables* tab) {
+ GENinstance* GENinst;
+ if (tab->defVmod) {
- for (GENinst = tab->defVmod->GENinstances; GENinst; GENinst =
GENinst->GENnextInstance) {
- char* name = GENinst->GENname;
- /* Do not inlude the x in the new name, XU1 -> U1 */
+ for (GENinst = tab->defVmod->GENinstances; GENinst; GENinst =
GENinst->GENnextInstance) {
+ char* name = GENinst->GENname;
+ /* Do not inlude the x in the new name, XU1 -> U1 */
@@ -1159,4 +1160,5 @@ void modprobenames(INPtables* tab) {
- }
- }
- }
+ }
+ }
+ }
+ }
- }
-
+ }
[ Original Bug Description ]
$ lsb_release -rd
Description: Ubuntu 22.04.3 LTS
Release: 22.04
ngspice version: 36+ds-1
The following happens:
=============================================
ngspice is used by KiCad to simulate circuits.
I have noticed that ngspice tends to crash or fail on relatively simple
circuits.
Taking KiCad out of equation I can see that even trivialities lead to
crashes.
For example, create a text file "test.netlist" with the following
content:
--- CUT ---
.title KiCad schematic
.save all
.probe alli
.end
--- CUT ---
Then start ngspice command line tool and run this command: "source
test.netlist".
The results would be this:
--- CUT ---
No compatibility mode selected!
Circuit: KiCad schematic
Segmentation fault (core dumped)
--- CUT ---
Other than segmentation faults, sometimes ngspice attempts to allocate a
negative amount of memory (which also results in crashes).
The following is expected:
=============================================
I expect that ngspice would not crash and would instead either do what it is
asked to do or report errors.
Suggested change:
=============================================
Update ngspice from version 3.6 to version 4.2: I have built v4.2 myself and
checked - it appears to work or report genuine errors in all cases where the
old ngspice simply crashes with no apparent reason.
ProblemType: Bug
DistroRelease: Ubuntu 22.04
Package: ngspice 36+ds-1
ProcVersionSignature: Ubuntu 6.2.0-35.35~22.04.1-generic 6.2.16
Uname: Linux 6.2.0-35-generic x86_64
NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair
ApportVersion: 2.20.11-0ubuntu82.5
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: GNOME
Date: Wed Jan 10 14:32:41 2024
InstallationDate: Installed on 2021-07-03 (921 days ago)
InstallationMedia: Ubuntu-MATE 20.04.2.0 LTS "Focal Fossa" - Release amd64
(20210209.1)
RebootRequiredPkgs: Error: path contained symlinks.
SourcePackage: ngspice
UpgradeStatus: Upgraded to jammy on 2023-09-12 (119 days ago)
** Changed in: ngspice (Ubuntu Jammy)
Status: In Progress => Confirmed
** Changed in: ngspice (Ubuntu Jammy)
Assignee: Sudip Mukherjee (sudipmuk) => (unassigned)
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2048906
Title:
[SRU] ngspice-36 crashes in various ways
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ngspice/+bug/2048906/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs