openresty / openresty/luajit2

Tests failing for s390x

Open
#178 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
1.4k
Forks
252
Avg merge
7d 11h
Merged PRs (30d)
3

Description

Tests like iter-bug.lua and jit_record.lua are failing and giving the following error from the test suite.

[aditya@clftest misc]$ ~/testing/bin/luajit jit_record.lua 
/home/aditya/testing/bin/luajit: jit_record.lua:1: module 'jit.opt' not found:
	no field package.preload['jit.opt']
	no file './jit/opt.lua'
	no file '~/testing/share/luajit-2.1.0-beta3/jit/opt.lua'
	no file '/usr/local/share/lua/5.1/jit/opt.lua'
	no file '/usr/local/share/lua/5.1/jit/opt/init.lua'
	no file '~/testing/share/lua/5.1/jit/opt.lua'
	no file '~/testing/share/lua/5.1/jit/opt/init.lua'
	no file './jit/opt.so'
	no file '/usr/local/lib/lua/5.1/jit/opt.so'
	no file '~/testing/lib/lua/5.1/jit/opt.so'
	no file '/usr/local/lib/lua/5.1/loadall.so'
	no file './jit.so'
	no file '/usr/local/lib/lua/5.1/jit.so'
	no file '~/testing/lib/lua/5.1/jit.so'
	no file '/usr/local/lib/lua/5.1/loadall.so'

From the documentation of LuaJIT, the module is built-in and optimization is turned on by default!

This is true as well from the following results (this is compared after commenting out require "jit.opt".start("maxside=0")),

[aditya@clftest misc]$ time lua iter-bug.lua 

real	0m1.062s
user	0m1.059s
sys	0m0.001s
[aditya@clftest misc]$ time ~/testing/bin/luajit iter-bug.lua 

real	0m0.171s
user	0m0.170s
sys	0m0.001s

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure on s390x with the test-suite cases iter-bug.lua and jit_record.lua. Check why require "jit.opt" cannot locate the built-in module, then compare the behavior with LuaJIT and Lua after the require is removed. Done means the affected tests run successfully with jit.opt available as documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, lua
Domain
compilers, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.